반응형
매개 변수가 bash 스크립트에 제공되었는지 확인하는 방법
이 질문에 이미 답변이 있습니다.
내 bash 스크립트에 하나의 매개 변수가 제공되었는지 확인하고 싶습니다.
내가 발견 이 있지만, 모든 솔루션은 불필요하게 복잡 할 것 같다.
초보자가 이해할 수있는이 간단한 문제에 대한 간단한 해결책은 무엇입니까?
$#
제공된 인수의 수와 동일한 사용 , 예 :
if [ "$#" -ne 1 ]
then
echo "Usage: ..."
exit 1
fi
주의 사항 : 함수 내에서 이것은 스크립트가 아닌 함수에 제공된 인수의 수와 같습니다.
편집 : bash에서 SiegeX 가 지적했듯이 (( ... ))
. 다음과 같이 사용할 수 있습니다.
if (( $# != 1 ))
then
echo "Usage: ..."
exit 1
fi
허용 된 솔루션 은 주어진 매개 변수 수에 대해 테스트하여 매개 변수가 설정 되었는지 확인합니다 . 이것이 원하는 검사가 아닌 경우, 즉 특정 매개 변수가 설정 되었는지 여부를 대신 확인하려는 경우 다음을 수행합니다.
for i in "$@" ; do
if [[ $i == "check parameter" ]] ; then
echo "Is set!"
break
fi
done
또는 더 간결하게 :
for i in "$@" ; do [[ $i == "check argument" ]] && echo "Is set!" && break ; done
if (( "$#" != 1 ))
then
echo "Usage Info:…"
exit 1
fi
반응형
'IT TIP' 카테고리의 다른 글
모든 SQL Server 외래 키에 일치하는 인덱스가 있어야합니까? (0) | 2020.11.20 |
---|---|
작은 따옴표 만 이스케이프하려면 어떻게합니까? (0) | 2020.11.20 |
Android : 상위 하단 + 하단 여백 정렬 (0) | 2020.11.20 |
Spring MVC : 차이점 (0) | 2020.11.20 |
익명 열거 형 사용 (0) | 2020.11.19 |