it-swarm.cn

您如何运行rm的模拟运行以查看将删除哪些文件?

我想看看在Linux中执行rm时将删除哪些文件。大多数命令似乎都具有空运行选项来仅显示此类信息,但我似乎找不到rm的此类选项。这有可能吗?

91
Cory Klein

假设您要运行:

rm *.txt

您可以运行:

echo rm *.txt

甚至只是:

echo *.txt

看看rm会删除哪些文件,因为是Shell扩展*.txt,而不是rm

唯一无法帮助您的是rm -r

如果要递归删除文件和目录,则可以使用find而不是rm -r,例如.

find . -name "*.txt" -print

然后,如果它能满足您的要求,请更改-print-delete

find . -name "*.txt" -delete
127
Mikel

你可以说:

rm -i

使其以交互模式运行,因此rm会提示您确认是否应删除每个文件。您可以对每个文件回答否,以查看哪些文件将受到影响。

17
Justin Ethier

您可以使用ls列出将由rm删除的所有文件:

ls ../path/*.txt

如果您需要列出以查看将使用递归rm删除的文件,请使用-R标志和ls

ls -R ../path/*.txt
4
Veneet Reddy