我有这样一个.bat文件
@echo off
set sql_bin_path=%MY_SQL%
cd /d %sql_bin_path%
mysqldump -u root -p --no-data test > test.sql
pause
goto :eof
:error
echo Something went wrong
pause我需要捕捉这行mysqldump -u root -p --no-data test > test.sql中可能出现的错误(例如,如果没有这样的db名称),并将执行移到goto :error块
该怎么做呢?
发布于 2021-05-12 09:46:56
命令mysqldump的返回状态可以是0、1或2。
在此基础上,你可以决定该做什么。
更多的解释可以在this ServerFault post中找到。
如果您使用.bat文件,解决方案是:
@echo off
set sql_bin_path=%MY_SQL%
cd /d %sql_bin_path%
mysqldump -u root -p --no-data test > test.sql
if %ERRORLEVEL% NEQ 0 (goto error)
echo MySQL was dumped successfully
pause
goto :eof
:error
echo Something went wrong
pause https://stackoverflow.com/questions/67500486
复制相似问题