linux下怎么用linux安装tree命令令以树形结构显示文件目录结构

Python实现 Linux tree命令:用树形结构显示目录结构 我的图书馆 Python实现 Linux tree命令:用树形结构显示目录结构 在网上看了一篇&Linux tree命令的Python实现,刚好也这个需求,遂下来自己改了一改,满足自己的需求,先把源码分享给大家: #!/usr/bin/python && import&os,&sys,&string&& class&XXTree:&& &&&&def&__init__(self):&& &&&&&&&&pass&& &&&&def&printHelp(self,&cmd):&& &&&&&&&&print&'Please&use&the&following&cmd:'&& &&&&&&&&print&'&&&&'&+&cmd&+&'&dir'&& &&&&&&&&print&'e.g.'&& &&&&&&&&print&'&&&&'&+&cmd&+&'&/home/fkong/tmp'&& &&&&def&getTree(self,&dir,&op):&& &&&&&&&&list&=&self.getList(dir,&0,&op)&& &&&&&&&&treelist&=&[]&& &&&&&&&&&& &&&&&&&&for&i&in&range(0,&len(list)):&& &&&&&&&&&&&&fullpath&=&list[i]&& &&&&&&&&&&&&parpath&=&os.path.dirname(list[i])&& &&&&&&&&&&&&filename&=&os.path.basename(list[i])&& &&&&&&&&&&&&if(fullpath&==&dir):&&& &&&&&&&&&&&&&&&&treelist.append(fullpath)&& &&&&&&&&&&&&&&&&continue&& &&&&&&&&&&&&&&&&&& &&&&&&&&&&&&path&=&fullpath.replace(dir,&"")&& &&&&&&&&&&&&names&=&path.split("/")&& &&&&&&&&&&&&name&=&"`---"&+&names[len(names)&-&1]&& &&&&&&&&&&&&for&j&in&range(1,&len(names)&-&1):&& &&&&&&&&&&&&&&&&name&=&"&&&&"&+&name&& &&&&&&&&&&&&treelist.append(name)&& &&&&&&&&&&&&&& &&&&&&&&&&&&pos&=&name.index("`")&& &&&&&&&&&&&&j&=&i&-&1&& &&&&&&&&&&&&while&j&&&0:&& &&&&&&&&&&&&&&&&name&=&treelist[j]&& &&&&&&&&&&&&&&&&if(name[pos]&==&'`'&or&name[pos]&==&'&'):&& &&&&&&&&&&&&&&&&&&&&name&=&name[0:&pos]&+&"|"&+&name[pos&+&1:&len(name)]&& &&&&&&&&&&&&&&&&&&&&treelist[j]&=&name&& &&&&&&&&&&&&&&&&else:&& &&&&&&&&&&&&&&&&&&&&break&& &&&&&&&&&&&&&&&&j&=&j&-&1&& &&&&&&&&&& &&&&&&&&for&i&in&range(0,&len(treelist)):&& &&&&&&&&&&&&print&treelist[i]&& &&&&&&&&&& &&&&def&getList(self,&dir,&layer,&op):&& &&&&&&&&list&=&[]&& &&&&&&&&if&layer&==&0:&list.append(dir)&& &&&&&&&&files&=&os.listdir(dir)&& &&&&&&&&for&file&in&files:&& &&&&&&&&&&&&file&=&os.path.join(dir,&file)&& &&&&&&&&&&&&if&os.path.isdir(file):&& &&&&&&&&&&&&&&&&list.append(file)&& &&&&&&&&&&&&&&&&list&+=&self.getList(file,&layer&+&1,&op)&& &&&&&&&&&&&&elif&op&==&'-d':&& &&&&&&&&&&&&&&&&pass&& &&&&&&&&&&&&else:&& &&&&&&&&&&&&&&&&list.append(file)&& &&&&&&&&return&list&& if&len(sys.argv)&&&2&:&& &&&&t&=&XXTree()&& &&&&t.printHelp(sys.argv[0])&& &&&&t&=&XXTree()&& &&&&dir&=&None&& &&&&if&len(sys.argv)&==&2:&& &&&&&&&&dir&=&sys.argv[1]&& &&&&op&=&None&& &&&&if&len(sys.argv)&==&3:&& &&&&&&&&op&=&sys.argv[1]&& &&&&&&&&dir&=&sys.argv[2]&& &&&&t.getTree(dir,&op)&& TA的最新馆藏本帖子已过去太久远了,不再提供回复功能。2885人阅读 语言基础(55) 有时我们需要生成目录树结构: 这时需要用到tree命令: 关于tree命令的一些参数: 常见的用法: tree -a 显示所有 tree -d 仅显示目录 tree -L n n代表数字..表示要显示几层... tree -f 显示完整路径.. 当然tree支持重定向至文件... tree -L 4 &dirce.doc即可生成UTF8格式的文档..我们也可以在windows 下查看.. 注意:生成的TXT或其他文件在win下面打开时也为乱码...这时我们要选择字符编码为UTF-8..当然..UTF-8是你linux下的默认字符集才可以...... &&相关文章推荐 * 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场 访问:935078次 积分:4997 积分:4997 排名:第5274名 原创:62篇 转载:110篇 评论:72条 (1)(3)(1)(1)(5)(3)(1)(2)(3)(6)(10)(6)(2)(1)(4)(2)(3)(1)(5)(4)(9)(2)(1)(5)(1)(3)(4)(2)(2)(1)(4)(11)(9)(10)(5)(2)(34)(4)Linux下的tree命令--Linux下目录树查看 下的tree命令--Linux下目录树查看 有时我们需要生成目录树结构,可以使用的有ls -R,但是实际效果并不好 \

我要回帖

更多关于 linux下tree命令 的文章

 

随机推荐