如何删除所有带有相同扩展名的文件,除了带有rm的文件

时间:2019-10-21 14:14:54

标签: regex wildcard zsh rm

除了特定的example.o,我想删除所有扩展名为.o的文件。如何用rm删除呢? 编辑: 环境:zsh

2 个答案:

答案 0 :(得分:2)

zsh中,您可以使用KSH_GLOBextglob的{​​{1}}:

bash

其他选择是使用setopt KSH_GLOB echo rm !(example).o 并使用略有不同的全局语法:

extended_glob

使用setopt extended_glob echo rm (^example).o 进行否定的地方。

对输出结果满意后,请在^之前删除echo

答案 1 :(得分:0)

会是这样吗?

 find -iname '*.o' -not -iname 'example.o' -execdir rm {} \;