我有以下脚本:
if [ `mysql -u root -p < test.sql` ]; then
echo "success"
else
echo "some error"
fi
如果命令运行正常或出现sql错误,我如何检查if
?
答案 0 :(得分:4)
您不需要test
命令,即此处[
。
假设mysql
在失败时产生非零退出代码而在成功时产生0,那么你可以说:
if mysql -u root -p < test.sql; then
echo "success"
else
echo "some error"
fi
答案 1 :(得分:0)
通常采用的另一种方式是“&amp;&amp;”和“||”分隔符。例如:
mysql -u root -p < test.sql && echo "success" || echo "some error"
如果mysql命令以状态0退出,则将打印“success”。如果没有,将打印“一些错误”。