Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/visual-studio-code/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在shell脚本中打印删除的文件名和路径_Shell - Fatal编程技术网

如何在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
    参数报告所有要删除的内容

如果我使用命令rm-rf**/generic删除了文件夹,如何打印文件夹路径deleted@JonathanRoss我最初也考虑过,但认为
find
更为惯用。但这是一个足够有效的选择,我正在考虑编辑它,以显示各种细微差别。