조건문 하나 쓰는데 자꾸 에러가 나서요. 변수가 특정 값인지 검사하는 아주 단순한 코드입니다.
var=""
if [ $var = "yes" ]; then
echo "맞음"
fi
이렇게 var가 빈 값일 때 돌리면 이런 에러가 뜹니다.
bash: [: =: unary operator expected
그리고 var에 "yes no" 처럼 공백 들어간 값을 넣으면 이번엔 too many arguments 라고 또 다른 에러가 나고요. 값이 비어있거나 공백만 들어가도 이렇게 터지니까 불안해서 못 쓰겠어요. 대괄호 안에서 변수를 그냥 쓰면 안 되는 건가요? 왜 값에 따라 인자 개수가 달라지는 것처럼 동작하는지랑, 안전하게 비교하는 방법이 궁금합니다.