阅 读 文 章

我怎么调不出来一个显示目录树的程序,晕!!!!!!!!!!!!

[来源:网上转载 (http://www.chinaunix.net) | 作者:网友(南非蜘蛛) | 时间:2007-05-27 | 浏览:人次 ]


[这个贴子最后由南非蜘蛛在 2002/06/06 01:04pm 编辑]

这是程序,在linux下可以,到solaris下就不行了,大家看看有什么错误
#!/bin/sh 
        # dtree: Usage: dtree [any directory] 
        dir=${1:-.} 
        (cd $dir; pwd) 
        find $dir -type d -print | sort -f | sed -e "s,^$1,," -e "/^$/d" -e  "s,[^/]*/([^/]*)$,`----1," -e "s,[^/]*/,| ,g"

# ./tree
/home/ghost
./tree: ----1,: 没找到
sed: 命令错乱:s,[^/]*/([^/]*)$,

因该出来一些结果

        `----shellp 
        `----updates 
        `----wu-ftpd-2.4 
        | `----doc 
        | | `----examples 
        | `----src 
        | | `----config 
        | | `----makefiles 
        | `----support 
        | | `----makefiles 
        | | `----man 
        | `----util 




 ultra-guest 回复于:2002-06-06 15:29:22

[这个贴子最后由ultra-guest在 2002/06/06 03:49pm 编辑]

不错。
#!/bin/sh
       # dtree: Usage: dtree [any directory]
       dir=${1:-.}
       (cd $dir; pwd)
       find $dir -type d -print | sort -f | sed -e "s,^$1,," -e "/^$/d" -e  "s,[^/]*/([^/]*)$, ----1," -e"s,[^/]*/,| ,g"


不过没`----了。。




 mathon 回复于:2002-06-06 17:25:55

那是因为`是特殊字符,要用\转义的。我将此程序重新改写了一下,
我用|代替了`。 其中中间的几字空格是TAB键而不是多个空格。
当然还有可改进的地方。如最后一行的首个|不应该再有。


dir=${1:-.}
cd $dir;pwd=`pwd`;echo $pwd
find $pwd -type d|sort -f|sed -e "s,^$pwd,," -e "/^$/d" -e "s,[^/]*/\([^/]*\)$,|----\1," -e "s,[^/]*/,+ ,g" -e "s,      +,       ,g" -e"s,+,|,g"
论坛热门帖子: [lch203] 写得蛮好的linux学习笔记(10-21)
[黑马制造] 学习java的30个目标(10-19)
[笑傲股林] 做测试半年了,有点迷茫,应该再学些什么提高自己的测试水平和测试能力呢?(10-19)
[udp8589] 大家用google的来吱一声? 用百度的~~也来报道下?(10-18)
[沂偌掳兆] 本人总结的一些认为C++比较经典的书籍,希望对大家有用(10-18)
TAG标签: 目录 程序 显示 一个 出来 怎么 -equot quot pwd dir

最新评论 共有0位网友发表了评论

发表评论

评论内容:不能超过250字,需审核,请自觉遵守互联网相关政策法规。
用户名:(注册)
密码:
验证码:
匿名发表

网站地图友情连接交流论坛网站投稿广告服务联系我们留言本站长统计
Some rights reserved: www.chmhome.com, 鄂ICP备07010232号 E-mail:chinakafei@live.com,QQ:552766
中国咖啡技术网(Chmhome):国外编程技术书籍,中文编程手册,经典编程文章,交流技术,技术软件下载,计算机论文,毕业论文.