- 论坛徽章:
- 0
|
本帖最后由 wdong_2001 于 2014-11-20 20:02 编辑
########脚本1 #Check_result_Loop.sh
#!/bin/bash
#filename: Check_result_Loop.sh
#init
Sleep_Duration=2
Sleep_Index=5
param1=$1
param2=$2
function Check_result_Loop()
{
local Check_Backup_Result_Count=0
while [[ ${Check_Backup_Result_Count} -lt ${Sleep_Index} ]]
do
sleep ${Sleep_Duration}
Check_Backup_Result $param1 $param2
done
if [[ ${Check_Backup_Result_Count} -eq ${Sleep_Index} ]]
then
echo -e "app_ip app_name war_path backup \t\033[31mFailed\033[0m"
fi
}
Check_Backup_Result()
{
backup_status=backupok ##这里我只是简单写死是这个状态
if [ ${backup_status} == "backupok" ]
then
echo "backup_status=backupok"
break
fi
}
main()
{
Check_result_Loop
}
main $@
##########脚本2 #Get_result.sh
#!/bin/bash
#filename: Get_result.sh
#init
main()
{
sh Check_result_Loop.sh param1 param2 &
if [ ${backup_status} == "backupok" ]
then
echo "the next command“
esle
echo "false"
fi
}
main
功能要求说明脚本2是: 先后台执行脚本1,如果1状态是backupok, 则脚本1g通过判断这个返回值,接着做下面的事。
脚本2再得到是backupok状态后,如何不再继续循环,我现在用的是break
脚本1的返回值(backupok)能不能返回给2呢????或1如何通过2的结果来做判断呢 |
|