2014-01-26 23 views
1

目前我的程序将采用一个命令行参数,该参数将引用我们将要查找的目录。从那里我必须创建一个所有文件的列表这个目录和任何后续的子目录,删除它们的路径名(即home/admin/3000/assignment.txt将变成assignment.txt)并按大小对每个文件进行排序。确定这部分已经完成Bash Shell - 提示用户删除大小为0的文件

find $location -type f -ls | sort -r -n -k7 | sed 's#.*/##' 

给我,我的排序列表,

现在我要提示用户,如果他们想要删除大小为0的每个文件,就如何做到这将是任何提示非常感激。

回答

3

您可以使用find的-size选项来定位零字节文件。如果需要删除前的提示,请使用rm -i选项。

find $location -type f -size 0 -exec rm -i {} \; 
+0

rm -i会提示用户输入y或n。如果用户输入y或yes,文件将被删除。 – suspectus

+0

Awsome谢谢!不能接受几分钟的答案仍然生病接受它,当它让我 –

+0

没问题 - 谢谢安德鲁 – suspectus