如何删除名称中不包含字符串的所有文件

时间:2013-11-12 09:27:06

标签: ls rm

我想删除目录中的所有文件 其名称中不包含字符串。 我可以使用什么命令。 我试过了

ls * matchingstring * | rm -f

它执行但不删除文件。

2 个答案:

答案 0 :(得分:3)

我得到了解决方案

ls -1 | grep -v' Crack' | xargs rm -f

这会删除所有不包含破解的文件

以他们的名义。

答案 1 :(得分:0)

sdk的答案有效。更简洁的方法是直接使用ls命令中的ignore选项来过滤掉不需要的结果。

ls -I 'ignore' -1 | xargs rm -f

这将删除名称中不包含“ignore”的所有文件。有关ls命令的ignore选项的更多信息,请参阅thisthis