首页 > 解决方案 > 在 shell 脚本中出现意外标记“fi”附近的语法错误

问题描述

我正在尝试运行 shell 脚本但遇到错误。有人可以告诉我我做错了什么吗?

脚本:

#mail_list="paripira@ITS.JNJ.com,lsowmyat@its.jnj.com,rgajula3@its.jnj.com,spate233@its.jnj.com"
. `dirname ${0}`/Aggrify/sltconfig.cfg
#. `dirname ${0}`/sltconfig.cfg
sh ${SLT_FILE_PATH}/START_BATCH.sh $IMEDICAL_SLT_ID
val=$(awk -F= -v s="$1" '$1 ~ s{print $2}' /medaff/Scripts/Aggrify/sltconfig.cfg)
echo "TASK ID is $val"
sleep 10
sh ${SLT_FILE_PATH}/START_TASK.sh  $IMEDICAL_SLT_ID $val
if [ -n "$1" ]
then
        python /medaff/Scripts/python/iMedical_Consumption_load_Procs.py "$1"
else
        echo "Please insert application_name"
fi
if [ $? -eq 0 ]
then
   printf "Hello team,\n\nConsumption Layer Completed.\n\nRegards,\niMedical team" > /medaff/Temp/Consumption Layer.txt
   mailx -s "Consumption Layer" ${mail_list} < /medaff/Temp/Consumption Layer.txt
   sh ${SLT_FILE_PATH}/END_TASK.sh  $val "SUCCEEDED"
else
    printf "Hello team,\n\nConsumption Layer failed.\n\nRegards,\niMedical team" > /medaff/Temp/Consumption Layer.txt
    mailx -s "Consumption Layer" ${mail_list} < /medaff/Temp/Consumption Layer.txt
    sh ${SLT_FILE_PATH}/END_TASK.sh  $val "FAILED" '-1' "Consumption Layer failed"
    exit 1
fi

错误:

test1.sh: line 25: syntax error near unexpected token `fi'
test1.sh: line 25: `fi

标签: linuxshellunix

解决方案


推荐阅读