【发布时间】:2015-05-08 19:42:52
【问题描述】:
我有一个名为 deployment.sh 的子脚本和名为 deloy_base.sh 的父脚本。从父 deploy_base.sh,我通过 ssh 在其他服务器上调用子脚本。实际上子脚本正在执行部署过程。如果子脚本中的任何命令失败,则应将错误状态发送到父脚本,以便我可以根据子脚本的成功或失败错误代码发送电子邮件。
现在无论子脚本中的任何命令是否失败,它总是会进入成功块。请帮忙。
ssh user@10.0.0.1 "/home/scripts/deployment.sh" DEV 2>&1 | tee /home/release/DEV.log
if [ $? -ne 0 ]
then
`mail -s "DEPLOYMENT FAILED" -a /home/DEV.log
-r "Deployment_Log@example.com" user@example.com > /dev/null 2>&1`
else
`mail -s "DEPLOYMENT SUCCESS" -a /home/DEV.log
-r "Deployment_Log@example.com" user@example.com > /dev/null 2>&1`
Fi
【问题讨论】: