我想自动将使用 qBittorrent 下载的种子提取到同一目录中。我有一个包含以下内容的 bat 文件 F:\extrator.bat。
@ECHO off
timeout /t 10 /nobreak
set arg1=%1
set arg2=%2
shift
shift
"C:\Program Files\WinRAR\WinRAR.exe" x "%arg1%" "%arg2%"
下载完成后,我从 qBittorrent 调用此方法
“F:\extractor.bat” “%F*.rar” “%F”
qBittorrent 日志显示传递的参数为 arg1 = F:\Torrent\Finished\downloadname*.rar arg2 = F:\Torrent\Finished\downloadname
但是 Winrar 报告错误,指出找不到 C:\Windows\System32\“F:\Torrent\Finished\downloadname*.rar”。
WinRar 似乎将 C:\Windows\System32\ 添加到 arg1 的开头。
有人知道为什么会发生这种情况吗?
答案1
让它工作了。qBittorrent 命令是F:\Extractor.bat %F\*.rar %F
extractor.bat 放置在F盘根目录
包含以下脚本:-
timeout /t 10 /nobreak
set "arg1=%~1"
echo "%arg1%"
set "arg2=%2"
shift
shift
"C:\Program Files\WinRAR\WinRAR.exe" x "%arg1%" "%arg2%"
这成功将档案提取到同一目录中。
答案2
根据以前的答案,我提炼并定制了以下命令:
"C:\Program Files\WinRAR\WinRAR.exe" x -ibck -inul -o+ %F\*.rar %F
-ibck
将在后台运行 WinRar-inul
将忽略任何可能抛出的错误。例如“未找到 rar 文件”-o+
将覆盖所有已存在的文件;-o-
将跳过这些。
关于 WinRar 使用的命令行语法和开关的更多信息可以在这里找到:
https://www.winrar-france.fr/winrar_instructions_for_use/source/html/HELPCommandLineSyntax.htm