13

我试过了:

find . -name "*.rar" -exec unrar x -o {} \;

输出:

从 ./setup.part2.rar 中提取

从 ./setup.part1.rar 中提取

RORY/nsfw.zip 已经存在。覆盖它?[Y]es, [N]o, [A]ll, n[E]ver, [R]ename, [Q]uit A

我不能让这个提示我;不幸的是,双手被占用。以为 -o 标志会这样做,但不是。

4

2 回答 2

29

您需要指定-o+启用自动覆盖:

find . -name "*.rar" -exec unrar x -o+ {} \;

unrar用法:

o[+|-]        Set the overwrite mode
于 2014-03-29T11:59:48.013 回答
1

不要使用 .rar 列出其他目录(仅在运行命令的位置)中的 *.rar 文件maxdepth。使用 删除屏幕上的打印或消息-inul

find . -maxdepth 1 -type f -name "*.rar" -exec unrar x -o+ -inul {} \;

于 2020-12-26T18:29:34.843 回答