删除目录中包含特定单词的所有文件

删除目录中包含特定单词的所有文件

我已经导航到文件系统上的特定目录,并希望删除目录中文件名中包含“sofa_”的所有文件。

有人可以建议如何做到这一点吗?

答案1

如果所有文件都在同一个目录中(没有子目录),只需运行:

rm *sofa_*

如果您需要进入子目录,请使用find

find . -name "*sofa_*" -type f -delete

或者,如果您正在使用bash,请启用匹配所有文件和 0 个或多个子目录(使其递归)globstar的选项:**

shopt -s globstar

然后:

rm **/*sofa_*

答案2

find . -name "*sofa_*" -type f | xargs rm

或者正如评论中正确指出的那样:

find . -name "*sofa_*" -type f -delete

相关内容