想保留一个文件夹里的几个文件,其他的好多文件想都删除了,于是就在网上找了找方法,发现有一个最靠谱而简单,分享给大家一下。 不知你是否想过在Linux命令行上,如何实现删除除了某个文件之外的所有文件? 如abc文件夹下有a、b、c三个文件,如何一行命令删除b和c,不删除a。有位童鞋在工作经常有此需求,本文将介绍其他童鞋提供的实现方法。 其中rm -f !(a) 最为方便。如果保留a和b,可以运行 rm -f !(a|b ) 来实现。 不过一般bash中运行后会提示 “-bash: !: event not found ” 可以通过运行 shopt -s extgolb 来解决。如下: # mkdir abc # cd abc # touch a b c # ls a b c # rm -f !(a) -bash: !: event not found # shopt -s extglob # rm -f !(a) # ls a # touch b c d # rm -f !(a|b) # ls a b 另外也可以使用下面的方法: # ls a b c # ls |grep -v a |xargs rm -f # ls a 出处: http://www.th7.cn/system/lin/201305/39351.shtml