success
위치 매개변수의 개수가 1일 때 출력 하려고 하는데 , 그렇지 않으면 오류가 발생합니다.
#!/usr/bin/env bash
foo() {
if [[ "$#" -ne 1 ]]
then echo "error"
else
echo "success"
fi
}
foo
명령을 사용하여 스크립트를 실행합니다 ./my_script 1
. 명령을 사용하든 error
스크립트를 실행하든 출력은 항상입니다../my_script 1
./my_script 1 2
나는 ./my_script 1
출력을 기대했다성공.
답변1
감사합니다새 질문 게시! 사용되는 코드를 보면 명확한 그림을 얻을 수 있습니다.
전체 스크립트에 매개변수를 전달했지만아니요기능 매개변수 foo
!
네가 원한다면스크립트된함수 내의 매개변수를 전달합니다.
foo() {
if [[ "$#" -ne 1 ]]
then echo "error"
else
echo "success"
fi
}
foo "$@"