目前,我正在使用此
unrar e -r *.rar
要提取文件,但这会将所有内容放入我的根目录解压缩文件夹中。目前的结构
/HomeFolder
/Nextlevel
/RarFolder
rarfile.rar
我希望输出为
/HomeFolder
/Nextlevel
raroutput.ext
如何更改命令才能执行此操作?
答案 0 :(得分:0)
尝试使用以下方法:
find /HomeFolder -type d -name 'RarFolder' -printf '%h\n' | xargs -I{} sh -c 'cd {}; unrar e -r *.rar'
它搜索所有嵌套的' RarFolder'在' / HomeFolder'中的子目录,从包含' RarFolder'的子目录中运行 unrar 命令(例如' / HomeFolder / Nextlevel'在你的例子中)。
将文件提取到一个的父目录,其中包含' *。rar'文件,命令可以调整为:
find /HomeFolder -type f -name '*.rar' -printf '%h\n' | xargs -I{} sh -c 'cd {}/..; unrar e -r *.rar'