web-dev-qa-db-ja.com

条件式の構文エラー:予期しないトークン `; '

複数の引数を受け入れるシェルスクリプトがあります。

引数「update」または「create」を受け入れることができます。引数が渡されない場合、ユーザーはエラーを受け取るはずです。ただし、if/Elif条件エラーが発生しています。

syntax error in conditional expression: unexpected token `;'

コード:

firstParam=$1
echo $firstParam //update/create/{empty}

if [[ "$firstParam" == "" ]]; then
    printf "${RED}Use this script as \"tzfrs update/new [projectName]\"${NC} \n"
    exit 1
Elif [[ "$firstParam" == "update"]]; then
  printf "update"
  exit 1
fi

このようなスクリプトがある場合

if [[ "$firstParam" == "" ]]; then
    printf "${RED}Use this script as \"tzfrs update/new [projectName]\"${NC} \n"
    exit 1
fi

エラー処理が機能し、次のメッセージが表示されます

Use this script as "tzfrs update/new [projectName]"

ただし、Elif条件を追加すると、上記のエラーが発生します。誰かアイデアはありますか?

22
Musterknabe
Elif [[ "$firstParam" == "update"]]; then 

する必要があります

Elif [[ "$firstParam" == "update" ]]; then

"update"および]]

37
Jahid