Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/batch-file/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Batch file 批量取消归档受密码保护的存档_Batch File - Fatal编程技术网

Batch file 批量取消归档受密码保护的存档

Batch file 批量取消归档受密码保护的存档,batch-file,Batch File,我想使用批处理文件自动从受密码保护的rar存档中提取文件。 我尝试了以下代码: @echo off UNRAR E -INUL -P ne2020 "%~dp0program.rar" pause 但是cmd窗口向我显示的输出告诉我unrr不是一个内部/外部命令。 如何修复此问题?您可以尝试使用此批处理文件: @echo关闭 标题在命令行中解压Winrar文件 颜色0A 模式con cols=75行=10行 设置“file=%~dp0program.rar” 设置“RAR_密码=ne2020”

我想使用批处理文件自动从受密码保护的rar存档中提取文件。 我尝试了以下代码:

@echo off
UNRAR E -INUL -P ne2020 "%~dp0program.rar"
pause
但是cmd窗口向我显示的输出告诉我unrr不是一个内部/外部命令。
如何修复此问题?

您可以尝试使用此批处理文件:

@echo关闭
标题在命令行中解压Winrar文件
颜色0A
模式con cols=75行=10行
设置“file=%~dp0program.rar”
设置“RAR_密码=ne2020”
设置日志=%~n0\u UnzipLog.txt
对于(“%file%”)中的%%i,请执行(设置“DEST=%~dp0%%~ni”)
设置strProgramFiles=%ProgramFiles%
如果存在“%ProgramFiles(x86)%”,则设置strProgramFiles=%ProgramFiles(x86)%
Set unrr=“%strProgramFiles%\WinRAR\unrr.exe”
如果不存在“%DEST%”MD“%DEST%”
如果存在%unrr%(转到:unrr)其他(转到:失败)
:UNRR
%取消%E-inul-y-p%RAR_密码%%file%“”%DEST%“>nul 2>&1
如果“%ERRORLEVEL%”等于“0”(转到成功),则为其他(转到失败)
:成功
回音(
Echo已成功解压缩“%DEST%”中的所有文件
Echo在“%DEST%”>“%Log%”中成功解压缩了所有文件
启动“”/MAX“%Log%”
超时/T 3/nobreak>nul
退出/b
:失败
颜色0C
回音(
有一个错误!
echo出现错误!>%Log%
开始/最大“”%Log%
超时/T 3/nobreak>nul

我检查了评论后找到了答案。 有两种方法。 第一:

将unar.exe文件与批处理文件放在同一目录中

第二: 添加此行:

cd C:\Program Files\WinRAR\

不要忘记不要在-p和密码之间进行分隔。

尝试为其提供unrr.exe所在位置的完整路径。是否安装了Winrar?除了完整路径之外,还有另一件事;密码应该是这样的
-pne2020
,没有space@Squashman是的installed@man_s_our你在这段代码中到底修改了什么?修改了吗检查密码是否正确?要提取的文件是否正确?我没有修改任何内容密码和rar路径是否正确。但我需要将unrr.exe放在同一目录中或使用cd命令