私のzshrcには、次のように定義された関数があります。
function k8sapi() {
PREFIX='https://STABLE_URL'
if [ "$1" == "prod" ];
then
PREFIX='https://PROD_URL'
fi
echo "1 --> $1"
echo "2 --> $2"
curl -s "${PREFIX}/${2}"
}
私がこれを実行したとき:
$ k8sapi stable foo
k8sapi:2: = not found
私は何が間違っていましたか? zshで関数のパラメータを表示するには?
この機能はbashシェルを使用して以前のノートブックからコピーされたため、zshに移行しようとしています。
答え1
問題はあなたのif
条件です。 1つだけを使用してください。=
それ以外の場合は使用できます[[ condition ]]
。
if [[ $1 == "prod" ]];
then
PREFIX='https://PROD_URL'
fi
または:
if [ "$1" = "prod" ];
then
PREFIX='https://PROD_URL'
fi