Error : unary operator expected - 쉘스크립트 타입관련 문법

less than 1 minute read

Message : ./db_migrate.sh: line 3: [: =: unary operator expected

검색해보니 정확히 같은 사례가 나와서 바로 해결

https://stackoverflow.com/questions/13617843/unary-operator-expected

리눅스 환경에 배포하다보면 shell script 사용을 할 일이 상당히 많은데…

쉘스크립트 공부해서 쓰는것도 아니고 그때그때 찾아가며 쓰다보니 자주 맞딱뜨리는 문제

이렇게 비교를 했는데

if [ $db_name = “api” ]; then

바시Bash는 이렇게 알아듣는다고

if [ = “api” ]; then

해결 - 아래의 표기법을 쓴다

따블 대괄호Braket

if [[ $db_name = “api” ]]; then

변수쌍따옴표

if [ “$db_name” = “api” ]; then