본문 바로가기
Linux/Shell script

[shell script] if문 비었을 때 에러가 발생되지 않게 하기

by 개폰지밥 2021. 10. 27.
반응형

l  if문이 비더라도 에러가 발생되지 않게 하기

쉘 스크립트를 작성하면 if문 안을 비워야할때가 가끔 있다.

그럴 때 사용하는 아무것도 하지 않는 명령어로 셸 내장 명령어인 : (널 명령어)가 있다.

if [ 조건 ]; then
:
fi

 

예를 들어 mysql이 설치 되어있는지 확인 후에 그 결과값을 파일로 저장해서,

파일의 값이 0보다 크면 mysql이 설치되어 있는 것으로 아무것도 실행하지 않고 종료하고,

파일의 크기가 0이면 mysql이 설치되어 있지 않다는 뜻으로 mysql 설치를 시작하는 스크립트를 작성하려고 한다.

 

파일이 아래와같이 스크립트를 만들다가 if문안에 아무런값도 주지 않고 fi를 해버리면

아래와 같은 syntax error가 뜬다.

[fido@localhost ~]$ ./mysql_install.sh
./mysql_install.sh: line 14: syntax error near unexpected token `fi'
./mysql_install.sh: line 14: `  fi'

 

이때 :널명령어를 아래와 같이 넣어주면

아래와 같이 if문 안의 값이 비었어도 에러를 뱉지 않고 아래와 같이 잘 실행된다.

또한 :는 null 명령어로 아무것도 실행하지 않는다.

반응형

댓글