我需要一些关于批处理文件的帮助,因为我在批处理中遇到了WinRAR,因为我以前还没有这么做/使用过它。
下面是我的文件夹的树,包括批处理文件:

我希望能够将每个.rar中的所有文件夹/子文件夹从"Example/Program_Ex/vegie"中提取/复制回一个目录到"Example/Program_Ex/vegies" (不要忘记每个RAR中已经存在的文件夹“"Example/Program_Ex/vegies"”,我无法更改这些文件夹,因为它们会自动更新自己。)
因此,基本上,对于批处理文件,我想:
extract "Example/Program_Ex/vegie/random.rar" to "Example/Program_Ex/vegies"
extract "Example/Program_Ex/vegie/random2.rar" to "Example/Program_Ex/vegies"
extract "Example/Program_Ex/vegie/random3.rar" to "Example/Program_Ex/vegies"
extract "Example/Program_Ex/vegie/random4.rar" to "Example/Program_Ex/vegies"
extract "Example/Program_Ex/vegie/random5.rar" to "Example/Program_Ex/vegies"我也试图不指定一个驱动器,或多或少是因为批处理文件将位于正确的文件夹中,而不是使用诸如"CD“或"PATH”之类的东西?
我已经看过一些关于网络和这里粗糙的例子,但我仍然不确定这方面的最佳方法。
我能找到的最接近的例子是:
@echo off
set destinationRAR=destination_winrar_file
set source=source_folder_path
"C:\Program Files\WinRAR\WinRAR.exe" a -ep1 -esh -ibck -m0 -r -t %destinationRAR% %source%(以上来自http://fredy-invayne.blogspot.com.au/2013/05/example-winrar-batch-file.html)
有谁能帮我举例说明如何落实我的问题呢?
发布于 2014-04-24 11:53:37
@echo off
for %%a in (
"%~dp0Example\Program_Ex\vegie\*.rar"
) do unrar x "%%~fa" -w "%~dp0Example\Program_Ex" -o+对于存储批处理文件的文件夹下指定路径中的每个文件,提取指示目标文件夹的文件内容并选择该existing files must be overwritten。
发布于 2014-04-24 12:23:58
只需调用一次WinRAR,就可以提取所有档案:
"C:\Program Files\WinRAR\WinRAR.exe" x "%~dp0Program_Ex\vegie\random*.rar" "%~dp0Program_Ex\"上述命令行中的最后一个参数指定所有档案的目标文件夹。您可能需要添加-o+开关(必须紧跟在x之后),以指定应覆盖所有文件:
"C:\Program Files\WinRAR\WinRAR.exe" x -o+ "%~dp0Program_Ex\vegie\random*.rar" "%~dp0Program_Ex\"如果您省略了它,归档程序将询问您如何处理现有文件(如果有的话)。
https://stackoverflow.com/questions/23267328
复制相似问题