意外标记“}”附近的语法错误

Kum*_*rsh 0 bash shell-script

我正在尝试编写一个函数,但出现语法错误。下面是我的功能:

checkNoOfParameter () {
    if [[ ${1} -eq ${2} ]]
    then
        job_Status = $true
    else
        job_Status = $false
        echo "Please provide all \"${2}\"  arguments with single space separation"
        readArgumentsFromUser ${2}
}
Run Code Online (Sandbox Code Playgroud)

我像这样调用函数:

    readArgumentsFromUser () {
      read -a input
      checkNoOfParameter ${#input[*]} ${1}
    }

    readArgumentsFromUser 3
Run Code Online (Sandbox Code Playgroud)

Mic*_*mer 5

您错过了fi}关闭函数之前结束 if 语句。

您的作业中还有不应该存在的空格,因此您随后会收到错误“job_Status: command not found”;删除=.两边的空格。