使用bash删除具有特定扩展名的所有文件

时间:2014-11-12 18:26:40

标签: bash find

我想使用bash命令删除所有带有'* .tar.gz'扩展名的文件。 我尝试了以下方法,但它没有用。

find . -iname '*.tar.gz' | rm

你能否建议我在这种情况下使用哪个命令? 另外,你能告诉我为什么上面的命令不起作用吗?

2 个答案:

答案 0 :(得分:5)

find本身可以在某些版本中删除,因此:

find . -iname '*.tar.gz' -delete

如果你没有这个开关,请使用anubhava的解决方案。

答案 1 :(得分:3)

请勿rm输出find输出,使用xargsfind -exec

find . -iname '*.tar.gz' -exec rm {} +

OR:

find . -iname '*.tar.gz' -print0 | xargs -0 -I {} rm {}