본문 바로가기
IT

[Linux] bash shell if,

by Dblog 2021. 10. 16.
728x90

리눅스에서 bash shell을 쓰다 보면 생각보다 if문 조건이 까다롭습니다..

 

#!/bin/bash

md=3

if [ ${md} -eq 1 ] || [ ${md} -eq 3 ]; then
    echo "1 or 2 mode"
elif [ ${md} -eq 3 ]; then
    echo "3 mode"    
else
    echo "other mode"
fi

이 코드를 보면 굉장히 간단하게 보이지만

  1. python과 같이 indent가 없으면 문법 에러가 납니다 특정 환경에서는 space bar입력은 인식하지 않고 tab입력만 인식할 때도 있습니다.
  2. [${md} -eq 1] 처럼 앞뒤 간격이 없게 작성하면 에러가 발생합니다. 이건 왜 발생하는지 솔직히 모르겠습니다.
  3. 마지막에 fi 안붙이면 에러 납니다. 이것 또한 까먹기 쉬운 것 같습니다.

 

728x90

'IT' 카테고리의 다른 글

[Docker] 도커란? 도커의 등장과 사용법  (0) 2022.02.26
mac 단축키  (0) 2022.01.27
[Linux] dd명령어 활용, dump  (0) 2021.09.01
[네트워크] DNS (Domain Name System)  (0) 2021.08.05
[OPTEE-64bit] Optee_os, Optee_client, Optee_example  (0) 2021.07.16

댓글