디렉토리에 대한 간단한 테스트를 코딩하려고 하는데 해결할 수 없는 문제가 계속 발생합니다.
prompt> if [ -d "./mydir" ] then echo "yes"; fi
-bash: syntax error near unexpected token 'fi'
나는 다양한 따옴표, 세미콜론, 줄 바꿈 등을 시도했습니다.
그러나 항상 이 구문 오류가 발생합니다.
내가 여기서 뭘 잘못했는지 설명해 주실 수 있나요?
답변1
조건 명령과 then
키워드를 구분하려면 세미콜론이 필요합니다.
if [ -d dir ]; then echo yes; else echo no; fi
# ...........^
물론 세미콜론 대신 개행 문자를 사용할 수도 있습니다.
또는 조건부 연산자를 사용하세요.
[ -d dir ] && echo yes