2013-03-25 50 views
2

我有一个包含大量子目录的目录,我想列出其每个行上包含其子目录的(子)目录的所有文件。我现在使用:ls:如何在每一行上显示目录+文件名

ls /home/directory -R | grep ".ext" > files.txt 

这不给我,我找...... 输出理想的情况下,我想的输出,看起来是这样的:

/home/directory/subdirectory1/file1.ext    4.3Mb 
/home/directory/subdirectory1/subsubdir1/file2.ext 3.3Mb 
/home/directory/subdirectory2/file3.ext    4.6Mb 
/home/directory/subdirectory3/file4.ext    5.2Mb 
... etc 

或者甚至更好,目录和文件名在不同的列中:

/home/directory/subdirectory1/    file1.ext 4.3Mb 
/home/directory/subdirectory1/subsubdir1/ file2.ext 3.3Mb 
/home/directory/subdirectory2/    file3.ext 4.6Mb 
/home/directory/subdirectory3/    file4.ext 5.2Mb 
... etc 

有关如何做到这一点的任何想法?非常感谢!

+0

看起来像你想得到'du'的输出...... – Kent 2013-03-25 12:26:54

回答

6

find putty -type f -name '*.c' -printf "%h\t%f\t%s\n" | column -t

会产生这样的

putty   sshzlib.c 38615 
putty   notiming.c 584 
putty/charset macenc.c 7129 
putty/charset sbcs.c  1190 

如果你想整个路径,出示您的目录参数找到从根绝对目录路径。

+0

谢谢,这是完美的! – Abdel 2013-03-25 12:50:04

+0

欢迎您! – MattH 2013-03-25 12:51:27

相关问题