使用Linux命令删除超过1天的子目录中的文件

Bar*_*zek 2 linux bash rm

老实说,我远未成为一名体面的bash脚本编写者,但我进行了一些研究,发现了一条似乎有用的命令

find /path/to/files* -mtime +1 -exec rm {} \;
Run Code Online (Sandbox Code Playgroud)

问题是此行是否将删除目录?因为我只想删除图像文件(实际上是* .jpeg格式)

Sto*_*ica 5

不,rm没有-r标志不会删除目录。

您似乎想添加更多过滤器:

  • -type f 仅匹配文件
  • -name '*.jpeg' 仅匹配以结尾的文件 .jpeg

最后,-exec rm {} \;您可以使用更简单的方法代替-delete

放在一起,这看起来更适合您:

find /path/to/files* -mtime +1 -type f -name '*.jpeg' -delete
Run Code Online (Sandbox Code Playgroud)