问题描述
我是 bash 脚本的新手。在下面的脚本中,我正在检查和恢复多行中的作业状态并根据匹配字符串进行提取。我怎样才能提高质量并使其更智能,或者可以放入一些逻辑中以减少我的重复检查。欢迎提出任何建议。
#!/bin/bash
#script to monitor the job.
job=$(dsjob -jobinfo Project jobname | grep "Job Status")
log="/tmp/log.log
currentdate=`date +"%Y-%m-%d %T"`
if [[ $job == *CRASHED* ]];
then
echo "$currentdate job is not Running" >> $log
dsjob -run -mode RESET Project jobname
if [ $? -eq 0 ]
then
echo " $currentdate RESET Success:" >> $log
else
echo " $currentdate RESET Failed: " >> $log
fi
dsjob -run Project job
if [ $? -eq 0 ]
then
echo "$ starting job ..." >> $log
else
echo " $currentdate Failed to run job check application logs" >> $log
fi
elif [[ $job == *Failed* ]];
then echo " $currentdate job is not Running" >> $log
dsjob -run -mode RESET Project job
if [ $? -eq 0 ]
then
echo " $currentdate RESET Success:" >> $log
else
echo " $currentdate RESET Failed: " >> $log
fi
dsjob -run Project job
if [ $? -eq 0 ]
then
echo "$ starting job ..." >> $log
else
echo " $currentdate Failed to run job check application logs" >> $log
fi
echo " $currentdate job is already running" >> $log
fi
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)