我需要删除所有.avi
扩展名且大小低于100MB。我有大量的视频文件,需要删除较短的视频以释放一些空间。我该怎么做?
答案1
使用find
命令:
find /path/to/ -name '*.avi' -type f -size -100M -delete
细节:
/path/to/
这告诉 find 在目录及其所有子目录中查找文件
/path/to/
。如果要从当前目录开始,请使用.
。-name '*.avi'
这告诉
find
只查找名称以.avi
-type f
这告诉
find
您仅查找常规文件。这不包括目录、管道、套接字等。-size -100M
这告诉
find
您仅查找小于 100MB 的文件。如果您想删除大于 100MB 的文件,请使用+100M
。-delete
这告诉
find
删除符合上述条件的文件。
为了安全起见,第一次尝试此命令时,请去掉-delete
。这将返回找到的文件列表:
find /path/to/ -name '*.avi' -type f -size -100M
如果找到的文件是您想要删除的文件,则添加回去-delete
。
仅搜索当前目录和不是其子目录
要限制递归查找到子目录中,请使用以下-maxdepth
选项:
find /path/to/ -maxdepth 1 -name '*.avi' -type f -size -100M -delete
要在当前目录执行上述操作:
find . -maxdepth 1 -name '*.avi' -type f -size -100M -delete