Linux 쉘 스크립트

나나's Brain·2024년 7월 8일

Linux

목록 보기
9/11
post-thumbnail

📁 쉘 스크립트 개요

🔖 쉘 스크립트란

💡 리눅스를 사용하다 보면 일련의 명령어를 반복적으로 실행해야 될 때가 있다. 이 때마다 길고 복잡한 커맨드 라인을 손으로 직접 입력하는 것은 번거롭기 때문에 미리 파일에 입력해 놓고 해당 파일을 쉘이 실행하도록 할 수 있다.

쉘에서 실행될 커맨드 라인을 입력해 놓은 파일을 쉘 스크립트라고 한다. 단순히 명령어 나열 뿐 아니라 복잡한 조건문이나 반복문과 같은 제어 구조도 활용할 수 있다.

🔖 쉘 스크립트의 장점

- 쉘 스크립트를 작성해 두면 쉽게 재사용할 수 있다.
- 다른 사람에게 쉘 스크립트를 공유할 수 있다.
- 명령어 입력 실수를 줄일 수 있다.


📁 쉘 스크립트의 기본

🔖 shell 관련 명령어

# 기본 shell 목록 확인
$ cat /etc/shells

# 현재 사용 중인 기본 쉘의 경로 확인
echo $SHELL

💡 기본 shell 목록에서 명령어를 통해 원하는 계정의 원하는 쉘로 변경이 가능하다.

## 기본 shell 변경
$ chsh -s /bin/dash 

## 특정 user의 shell을 변경할 수도 있다.
$ chsh -s /bin/dash username

## 아래 명령어로 계정별 shell들을 확인할 수 있다.
$ vim /etc/passwd

🔖 셔뱅

💡 아래와 같은 쉘 스크립트를 작성하여 실행해 보자.

## vim 편집기를 활용한 sh파일 생성 및 수정
$ vim test.sh
  • test.sh
    #!/bin/bash
    
    echo 'ohgiraffers directory'
    cd /home/ohgiraffers
    ls -l
## 실행 권한 부여
$ chmod +x test.sh

## 셔뱅을 활용한 test.sh 쉘 스크립트 실행
$ ./test.sh

💡 첫 줄의 #!로 시작하는 행을 셔뱅이라고 하며 해시 기호와 느낌표(#!) 로 이루어진 문자 시퀀스로, 스크립트의 맨 처음에 온다.

#!/bin/bash/bin/bash를 사용한다고 명시적으로 선언한 것으로 /bin/bash를 입력하지 않아도 되고, 또한 사용중인 쉘이 bash가 아니어도 자동으로 /bin/bash가 스크립트를 실행하게 한다.

profile
"로컬에선 문제없었는데…?"

0개의 댓글