我从这个link获得了批量解压缩的代码。但它会解压缩存在批处理文件的文件夹中的所有内容。我希望它将其解压缩到特定文件夹或其单个文件夹。
注意:我的bz2文件位于存在批处理文件的文件夹之外的各种文件夹中。
这是我使用过的脚本:
for /R "C:\Users\victor\Desktop\MASTERS\color feret\disc 1\data\images" %%I in ("*.bz2")
do ("%ProgramFiles%\WinRAR\WinRAR.exe" x -y -o"%%~dpnI" "%%~fI")
有人可以告诉我该怎么做吗? 如果可能的话,任何人都可以向我解释有什么争论? " x,-y -o %% dpnI"谢谢
答案 0 :(得分:1)
根本不需要此过程的批处理文件。启动 WinRAR ,选择要提取的所有存档,单击工具栏中的提取到,选择基本目标文件夹,选中将存档提取到子文件夹< / em>在其他组中,然后按按钮确定。那就是它。
从控制台窗口的命令行,当前工作目录是包含要提取的所有* .bz2文件的目录:
"%ProgramFiles%\WinRAR\WinRar.exe" x -ad -y *.bz2 C:\Temp\
不需要 for 循环,因为 WinRAR 支持存档文件名的通配符。
使用选项-ad
,存档文件 First.bz2 将解压缩到文件夹 C:\ Temp \ First ,存档文件 Other.bz2 提取到 C:\ Temp \ Other ,依此类推。通过在GUI中选中将文件提取到子文件夹选项,您可以使用选项-ad
。
WinRAR 的帮助包含页面切换-AD - 将存档名称附加到目标路径。点击帮助主题上的菜单帮助。在标签目录上打开命令行模式,然后打开命令和切换。 WinRAR 的程序文件文件夹中的文本文件 Rar.txt 还包含命令 x 以及选项-ad
和{{的说明1}}以及控制台版本 Rar.exe 的所有其他命令和选项。
但是如果您想继续使用 for 循环并想知道-y
和%%~dpnI
是什么意思,请打开命令提示符窗口,输入{{1} }或%%~fI
并阅读。