Linux Bash shell script

Shell Script 파일 권한 설정과 실행 방법

임베디드 친구 2025. 1. 16. 08:48
반응형

Linux 환경에서 Shell Script를 작성하고 실행하는 방법은 매우 간단하면서도 기본적인 작업입니다. 이번 포스팅에서는 Shell Script 작성 및 실행을 위한 파일 권한 설정(chmod)과 실행(./script.sh) 방법에 대해 살펴보겠습니다. 간단한 예제를 통해 이해를 돕고자 합니다.

1. Shell Script란?

Shell Script는 Linux Shell 명령어를 작성한 스크립트 파일로, 일련의 작업을 자동화할 때 사용됩니다. 반복적인 작업이나 복잡한 명령어 실행을 단순화할 수 있습니다.

2. Shell Script 작성 및 실행 환경 설정

2.1 Shell Script 파일 생성

Shell Script 파일은 일반 텍스트 파일로 작성됩니다. 확장자로 .sh를 사용하는 것이 일반적이지만 필수는 아닙니다. 아래는 간단한 Shell Script 작성 과정입니다.

1단계: 파일 생성

$ nano script.sh

2단계: 스크립트 작성

아래와 같이 nano 또는 원하는 편집기를 사용해 스크립트를 작성합니다.

#!/bin/bash
# 간단한 Hello World 예제

echo "Hello, World!"

3단계: 저장 및 종료

Ctrl + O를 눌러 저장하고, Ctrl + X를 눌러 편집기를 종료합니다.

2.2 파일 권한 설정: chmod

파일을 실행 가능한 상태로 설정하려면 권한을 변경해야 합니다. Linux에서는 기본적으로 새로 생성된 파일에 실행 권한이 없습니다.

1단계: 권한 확인

$ ls -l script.sh

출력 예:

-rw-r--r-- 1 user user 42 Jan 13 12:34 script.sh

-rw-r--r--는 파일에 실행 권한이 없음을 나타냅니다.

2단계: 실행 권한 추가

chmod 명령어를 사용해 파일에 실행 권한을 부여합니다.

$ chmod +x script.sh

3단계: 권한 확인

$ ls -l script.sh

출력 예:

-rwxr-xr-x 1 user user 42 Jan 13 12:34 script.sh

-rwxr-xr-x로 변경된 것을 확인할 수 있습니다. 이는 소유자에게 읽기(r), 쓰기(w), 실행(x) 권한을 부여하고, 그룹과 다른 사용자에게는 읽기(r)와 실행(x) 권한만 부여했음을 의미합니다.

2.3 스크립트 실행

1단계: 실행

./를 사용하여 스크립트를 실행합니다.

$ ./script.sh

2단계: 결과 확인

출력:

Hello, World!

3. 잘못된 실행 시나리오와 해결 방법

3.1 실행 권한이 없는 경우

$ ./script.sh
bash: ./script.sh: Permission denied

해결 방법

chmod 명령어로 실행 권한을 추가합니다:

$ chmod +x script.sh

3.2 잘못된 해석기(Interpreter) 지정

스크립트 첫 줄에 #!/bin/bash가 없거나 잘못된 경로를 지정한 경우 실행 오류가 발생할 수 있습니다.

예제:

$ ./script.sh
bash: ./script.sh: bad interpreter: No such file or directory

해결 방법

스크립트 첫 줄을 확인하고, 올바른 해석기를 지정합니다:

#!/bin/bash

4. 더 알아보기: 권한 관리 심화

4.1 권한 세부 설정

chmod는 권한을 세부적으로 설정할 수 있습니다. 예를 들어:

$ chmod 755 script.sh
  • 7: 소유자에게 읽기(r), 쓰기(w), 실행(x) 권한 부여
  • 5: 그룹 및 다른 사용자에게 읽기(r), 실행(x) 권한 부여

4.2 권한 제거

특정 권한을 제거하려면 다음과 같이 실행합니다:

$ chmod -x script.sh

5. 실습 예제

아래는 사용자 입력을 받아 출력하는 간단한 스크립트입니다:

#!/bin/bash
# 사용자 입력을 받아 출력하는 예제

echo "Enter your name:"
read name
echo "Hello, $name! Welcome to Shell Scripting."

실행 방법

  1. 파일 생성 및 내용 입력

    $ nano input_script.sh
  2. 실행 권한 부여

    $ chmod +x input_script.sh
  3. 스크립트 실행

    $ ./input_script.sh
  4. 결과:

    Enter your name:
    John
    Hello, John! Welcome to Shell Scripting.

6. 결론

Linux에서 Shell Script를 작성하고 실행하려면 파일 권한 설정과 실행 방법을 이해하는 것이 중요합니다. 이번 포스팅에서는 chmod를 사용한 권한 설정과 ./script.sh를 통한 스크립트 실행 방법을 살펴보았습니다. 이를 바탕으로 더 복잡한 스크립트를 작성하고 실행할 수 있기를 바랍니다.

반응형