SHELL - 在单个命令行中删除主目录及其子目录下的文件

SHELL - Deleting files under home directory and its sub-directories in a single command line

我想在一个命令行中找到我的主目录及其所有子目录下所有包含字符串 "red" 的文件。我在 Mac 上使用终端。这是我目前所拥有的:

$ cd && rm -ri *red*

我希望我的 -r 参数会递归地遍历从主目录开始的所有目录,但它并不完全有效。有没有更简单的方法来删除目录及其子目录下的某些文件?谢谢

有多种方法可以做到这一点。例如:

find ~ -name "*red*" -type f | xargs rm

find 部分将递归查找主目录 (~) 中包含字符串 red (-name "*red*") 的所有文件 (-type f) 并输出文件列表。然后我们将列表传递给 xargs 命令,该命令将为每个文件调用 rm