./a.sh: line 121: [: =: unary operator expected


if [ $1 != -v ]; then
   echo "usage: $0 [-v]"
   exit
fi

./a.sh: line 121: [: =: unary operator expected


bash에서 위와 같은 에러가 발생하는 이유는 $1입력이 없을 경우 아예 없는 것으로 판단하여 아래와 같이 인식되기 때문이다.
if [ != -v ]; then
그러므로 간단히 다음과 같이 수정하면 된다.


if [ "$1" != -v ]; then
   echo "usage: $0 [-v]"
   exit
fi

댓글

이 블로그의 인기 게시물

WSL2 Ubuntu 20.04 및 네트워크 설정

리눅스 멀티코어를 사용하는 tar 압축/해제

WSL에 X-Window로 Terminator 설치하고 Minicom까지