想要为批处理文件应用try catch(try catch的替代方法)

时间:2014-03-28 10:38:22

标签: django batch-file

我想转储不包含contenttype的数据。我是gerring错误,所以我将try catch应用于代码。 这样我就可以找出我面临的错误。

set /p pathName=Enter The path where you want to take backup:%=%
@echo %pathName%
set d=%date:~-4,4%_%date:~-7,2%_%date:~0,2%
set d=%d: =_%
set t=%time:~0,2%_%time:~3,2%_%time:~6,2%
set t=%t: =0%
md %pathName%\media
try{
    python dtz/manage.py dumpdata -e contenttype>> %pathName%/Backup_on_%d%_%t%.json
}
catch
{
    python dtz/manage.py dumpdata>> %pathName%/Backup_on_%d%_%t%.json
}
pause
xcopy dtz\templates\media %pathName%\media /s

我收到CommandError: Unknown app in excludes: contenttype

时出错

请帮帮我。

1 个答案:

答案 0 :(得分:1)

批处理脚本中没有try-catch块。您需要使用命令返回的errorlevel来检查它是成功执行还是失败。 通常 errorlevel 0表示命令执行成功,但errorlevel也取决于正在执行的命令/程序。

有关ERRORLEVEL

的详细信息

ERRORLEVEL可以按如下方式使用:

IF %ERRORLEVEL% NEQ 0 (do something)