Bash-在多个目录上执行相同的命令

时间:2014-03-06 15:01:30

标签: linux bash scripting find

我想创建一个脚本,删除指定目录列表中超过7天的所有文件,但想知道最好的方法是什么......

我想在指定的所有目录上执行以下命令:

find DIRECTORY_PATH -type f -mtime +7 -exec rm {} \;

也许是一个包含目录列表的数组,并循环遍历数组中执行find命令的每个元素?

任何帮助/建议都将不胜感激。

1 个答案:

答案 0 :(得分:1)

您可以直接将所有目录存储在文件中,例如dirs.txt并循环显示:

while read dir
do
  find "$dir" -type f -mtime +7 -exec rm {} \;
done < dirs.txt