我想递归搜索文件夹,提取 RAR 文件,然后删除 .nfo、.svf 和 RAR 文件(*.rar 和 *.r1、*.r2 等)。
我找到了一个递归提取但不删除的命令:
find ./ -name '*.rar' -exec unrar e {} \;
Run Code Online (Sandbox Code Playgroud)
附加另一个-exec
谓词(在rm
里面),只有在第一个成功时才会运行:
find . -name '*.rar' -exec unrar e {} \; -exec rm {} \;
Run Code Online (Sandbox Code Playgroud)
-exec rm {} \;
.rar
如果unrar
-ing 成功 ( -exec unrar e {} \;
) 即unrar
以退出状态 0 返回,则只会运行以删除文件。
如果-ing 成功bash
,您也可以使用、使用globstar
选项递归匹配全局模式 ( *.rar
) 和rm
每个文件unrar
:
find . -name '*.rar' -exec unrar e {} \; -exec rm {} \;
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
6985 次 |
最近记录: |