我当前正在使用一个批处理文件,该批处理文件使用一个名为CriPackTools的程序来提取CPK文件的内容。
@echo off
for /r %%i in (*.cpk) do "CriPakTools.exe" "%%i" ALL
正如您在此处看到的那样,它使用任何cpk拖放到批处理文件中并将其内容提取到同一目录。
现在如何更改它,以便它使用我的XXXX.cpk,创建一个名为XXXX(与文件相同)的文件夹,并将其内容提取到该文件夹中。
谢谢
答案 0 :(得分:1)
假设CriPakTools.exe
将文件提取到当前目录:
@echo off
for /r %%i in (*.cpk) do (
md "%%~dpni"
pushd "%%~dpni"
"CriPakTools.exe" "%%i" ALL
popd
)
答案 1 :(得分:0)
由于您正在使用for /R
循环,因此将循环遍历所有子文件夹。如果.cpk
文件位于与%cd%
或CriPakTools.exe
位置不同的文件夹中,则该命令将失败。我建议以下代码:
@echo off
pushd "C:\path\with\cpks"
for /R "C:\path\with\cpks" %%A IN (*.cpk) do (
cd "%%~dpA"
mkdir "%%~nA"
cd %%~nA
"CriPakTools.exe" "%%~fA" ALL
)
cd "C:\path\with\cpks"
echo The operation has finished.
pause>nul
exit /b 0
这可能会对您有所帮助。