首页 > 解决方案 > shell脚本中意外标记else附近的语法错误

问题描述

我有这个带有 2 个参数的 shell 脚本,但是当我运行它时,它显示了这个错误。我需要做什么才能正确编写这个 if-then-else 块?

NK_BILLED_UNBILLED_DATA.sh:第 31 行:else' 'K_BILLED_UNBILLED_DATA.sh: line 31: 其他意外标记附近的语法错误

外壳脚本

echo Script Name: "$0"
echo Total Number of Argument Passed: "$#"
echo Arguments List -
echo 1. $2
if test -d $2;then

        echo "Welcome $2"

else

        echo "Not Exist";

        fi


echo All Arguments are: "$*"


ORACLE_SID=BSCS01U
export ORACLE_SID

export PATH=.:$PATH:$ORACLE_HOME/bin

export BC=$1
echo "$BC"

if [ $# -ne 0 ];then

    export REPORT_GEN_PATH=$2;

    else 

    export REPORT_GEN_PATH=$WORK/Reports/ANT001A_REQ01/generated_reports;

fi

export REPORT_HOME=$BSCS_WORKDIR/Reports/ANT001A_REQ01

echo "Please wait....The Billed and Unbilled report is being created."
sqlplus SYSADM/SYSADM@$ORACLE_SID << eof_disp > $REPORT_HOME/logs/log_file_$$.log
        @$REPORT_HOME/scripts/GEN_BILLED_UNBILLED_REPORT_FILE.sql
eof_disp

echo "Billed and Unbilled report created."

标签: shell

解决方案


推荐阅读