删除查找结果中的文件
remove files that are in find result
我想删除所有扩展名为“.json”的文件。所以我 运行
find . -name "*.json"
这将产生一些文件
x.json
y.json
z.json
然后我为每个文件做 rm
,但是当你有很多文件时,这是一项非常乏味的任务。
有什么方法可以将 rm
与 find
结果混合使用
您可以将 -exec
选项与 find
一起使用。
find . -name '*.json' -exec rm -f {} \;
您可以使用 xargs
将找到的文件提供给另一个命令。
-exec
的优点是不会为每个文件创建一个新进程:
find . -name "*.json" | xargs rm
如果使用 GNU find,它非常简单:
find directory/ -name "*.json" -delete
我想删除所有扩展名为“.json”的文件。所以我 运行
find . -name "*.json"
这将产生一些文件
x.json
y.json
z.json
然后我为每个文件做 rm
,但是当你有很多文件时,这是一项非常乏味的任务。
有什么方法可以将 rm
与 find
结果混合使用
您可以将 -exec
选项与 find
一起使用。
find . -name '*.json' -exec rm -f {} \;
您可以使用 xargs
将找到的文件提供给另一个命令。
-exec
的优点是不会为每个文件创建一个新进程:
find . -name "*.json" | xargs rm
如果使用 GNU find,它非常简单:
find directory/ -name "*.json" -delete