FMF*_*MFF 0 command-line rename batch-file
这与我之前的问题有关.
ren "C:\Temp\%%A" "%%A"
if errorlevel 0 (
"C:\Program Files\7-Zip\cmdline\7za.exe" a -tzip -mx9 "C:\temp\Zip\%%A.zip" "C:\temp\%%A"
Move "C:\temp\%%A" "C:\Temp\Archive"
)
Run Code Online (Sandbox Code Playgroud)
在上面,即使REN命令失败,IF总是评估为true.
我们的想法是检查文件是否未被任何其他应用程序锁定,如果没有,则将其归档并将其移动到其他位置.
怎么做到最好?
谢谢.
help if
在命令行上键入以获取有关错误级别处理的一些信息.
您的代码的问题是,IF ERRORLEVEL N
对于任何等于或大于的数字,表达式的计算结果为trueN
通常只有ERRORLEVEL 0表示成功,任何其他(更大)值表示某些错误.要简单地检查,如果还没有发生错误,请将检查反转为:
IF NOT ERRORLEVEL 1 (
REM your code here
)
Run Code Online (Sandbox Code Playgroud)
或者作为替代方案,退出脚本:
IF ERRORLEVEL 1 EXIT /B
Run Code Online (Sandbox Code Playgroud)