자주 사용하는 리눅스 명령어 정리 (2) - 쉘 스크립트

​ ​

맥북을 사용하면서 가장 좋았던 점은 기본 운영체제가 유닉스 계열이다보니, 모든 것이 커멘드라인으로 해결된다는 점이었다. 특히 쉘 스크립트를 활용하면 간단한 자동화도 구현할 수 있다. 따라서, 이번 포스팅에서는 자동화를 위한 쉘 스크립트 문법을 정리해보려 한다.

​ ​

쉘 스크립트란?

문법에 대해 알기 이전에 쉘 스크립트가 어떤 역할을 하는지 알아야 한다. 기본적으로 우리가 사용하는 운영체제는 하드웨어 제어, CPU 스케줄링 등 많은 역할을 수행한다. 쉘은 운영체제 위에서 다양한 운영 체제 기능과 서비스를 구현하는 인터페이스를 제공하는 프로그램이다. 즉, 사용자와 맞닿아 있기 때문에 우리는 쉘의 명령어를 통해 직접 조작할 수 있는 것이다.

아래는 쉘 스크립트와 관련된 기본 명령어이다.

  • 스크립트 실행 : sh {script.sh}
  • 스크립트 실행가능 지정 : chmod +x {script.sh}

​ ​

변수의 기본

  • 변수에 넣는 모든 값은 문자열로 취급한다.
  • 변수이름은 대소문자 구분, ‘=’ 좌우에는 공백 유지

​ ​

연산자

  • OR : ||
  • AND : &&
  • 문자열 비교 : “string1”=”string2”

​ ​

if-else 문

if [ case ]; then
  true
else
  false
fi

​ ​

case 문

case $answer in
  yes)
  	echo "yes"
  no)
  	echo "no"
esac

​ ​

for-in 문

for fname in $(ls .sh); do
  echo "fname"
done

​ ​

while 문

while [ 1 ]; do
  echo "fname"
done