我需要删除所有带有.avi扩展且大小低于100MB 的文件。我有大量的视频文件,我需要删除短的文件以释放一些空间。我如何做到这一点?
使用find命令:
find /path/to/ -name '*.avi' -type f -size -100M -delete
Run Code Online (Sandbox Code Playgroud)
细节:
/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
Run Code Online (Sandbox Code Playgroud)
如果找到的文件是您要删除的文件,则将-delete.
要将递归查找限制在子目录中,请使用以下-maxdepth选项:
find /path/to/ -maxdepth 1 -name '*.avi' -type f -size -100M -delete
Run Code Online (Sandbox Code Playgroud)
要在当前目录上执行上述操作:
find . -maxdepth 1 -name '*.avi' -type f -size -100M -delete
Run Code Online (Sandbox Code Playgroud)