删除目录中具有多个扩展名的所有文件

删除目录中具有多个扩展名的所有文件

我有两个扩展名类别的文件(.out 和 .error)。有没有一个命令可以一次性删除它们?

我试过了rm -f *.out || *.error,但是没用。谢谢

(我也看到了链接的帖子但仍然不确定如何处理多个扩展)

编辑:非递归情况

答案1

这里||不需要1rm它将作用于所有操作数,因此:

rm *.error *.out

或者,使用 bash 的括号扩展(如果您有一个长列表则很有用):

rm *.{error,out}

1不仅不需要||,而且还会改变命令结构。||是 bash 的 OR for命令。因此,如果您有文件a.error、、b.errora.out、,b,outbash 将执行:

rm a.out b.out

而如果失败,则以 作为参数执行a.errorb.error它不会传递a.errorb.error进行第二次运行rm

相关内容