내 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
조건입니다. 하나만 사용해야 합니다 . =
그렇지 않으면 을 사용할 수 있습니다 [[ condition ]]
.
if [[ $1 == "prod" ]];
then
PREFIX='https://PROD_URL'
fi
또는:
if [ "$1" = "prod" ];
then
PREFIX='https://PROD_URL'
fi