我在一个文件夹中有大量图像文件(例如 10000 张图片),我想检查上周的图像文件 (.jpg),以便我可以轻松地将这些上周的图像移动到外部硬盘,而不是将所有图像文件 (.jpg) 传输到硬盘。请问有人能帮我解决这个问题吗?谢谢
答案1
有一个名为的命令find
可以帮助识别文件,甚至将它们移动到另一个位置。
查找超过 7 天的 .jpg 文件并列出文件的名称:
find /path/to/images -name "*.jpg" -mtime +6
命令的一部分-mtime
根据后面的天数查找文件,+6 表示超过 7 天,因为非-mtime
完整天数会向下舍入。有关更多信息,请参阅回答。
如果你想要有关文件的更多信息,请使用 find 的 -ls 选项,如下所示:
find /path/to/images -name "*.jpg" -mtime +6 -ls
一旦您确定这些是您想要移动的文件,以下命令将处理该问题,只需记住将“/path/to/images”和“/path/to/external_drive”更改为正确的值。建议使用绝对路径。
find /path/to/images -name "*.jpg" -mtime +6 -execdir mv "{}" /path/to/external_drive "{}" \;
如果您的图像目录中有您不想搜索的子目录,您可以--max-depth 1
将此选项放在“*.jpg”后面以空格分隔,以限制目录递归。