如何在shell脚本中打印删除的文件名和路径
我正在使用以下命令删除所有目录和子目录中的文件:如何在shell脚本中打印删除的文件名和路径,shell,Shell,我正在使用以下命令删除所有目录和子目录中的文件: find . -type f -name "*.txt" -exec rm -f {} \; 但是我想知道哪些是被删除的文件以及它们的路径。我该怎么做呢?只需将-print参数添加到find $ find . -type f -name "*.txt" -print -exec rm -f {} \; 正如下面@JonathanRoss所指出的,您可以使用-v选项来实现与rm相同的结果 这不是你问题的范围,但更一般地说,如果你想递归删除目录,
find . -type f -name "*.txt" -exec rm -f {} \;
但是我想知道哪些是被删除的文件以及它们的路径。我该怎么做呢?只需将
-print
参数添加到find
$ find . -type f -name "*.txt" -print -exec rm -f {} \;
正如下面@JonathanRoss所指出的,您可以使用-v
选项来实现与rm
相同的结果
这不是你问题的范围,但更一般地说,如果你想递归删除目录,它会变得更有趣。然后:
- 一个简单的
参数使其保持沉默-exec rm-r
参数报告您正在操作的顶级目录-print-exec rm-r
参数报告所有要删除的内容-exec rm-rv
find
更为惯用。但这是一个足够有效的选择,我正在考虑编辑它,以显示各种细微差别。