리눅스 셸 스크립트 작성 및 실행 방법

리눅스 셸 스크립트 작성 및 실행 방법

셸 스크립트는 일련의 명령어를 포함하는 텍스트 파일입니다. 스크립트의 첫 줄은 ‘shebang’(#!)으로 시작하여 스크립트가 실행될 셸을 지정합니다. 예를 들어, Bash 셸 스크립트의 경우 첫 줄은 #!/bin/bash로 시작합니다.

1. 간단한 셸 스크립트 예제

다음은 기본적인 ‘Hello World’ 셸 스크립트 예제입니다.

#!/bin/bash
echo "Hello World"

셸 스크립트를 실행하기 위해서는 bash script.sh 또는 sh script.sh 명령을 사용하여 스크립트를 실행할 수도 있습니다.

간단한 리눅스 셸 스크립트 예제

2. 스크립트 실행 권한 설정

셸 스크립트 파일을 생성한 후에는 기본적으로 실행 권한이 부여되지 않습니다. 이를 확인하기 위해 ls -l script.sh 명령을 사용하여 파일의 권한을 확인할 수 있습니다. 파일 권한에서 ‘x’가 없다면, 해당 파일은 실행 권한이 없는 상태입니다.

스크립트 파일에 실행 권한을 부여하기 위해서는 chmod +x script.sh 명령을 사용합니다. ‘chmod +x’ 명령은 해당 파일에 대해 사용자, 그룹 및 기타 사용자에게 실행 권한을 추가합니다. 이 명령을 실행한 후에는 ls -l script.sh를 다시 사용하여 ‘x’ 권한이 추가되었는지 확인할 수 있습니다.

이제 ./script.sh 명령을 사용하여 스크립트를 직접 실행할 수 있습니다. 만약 이전에 ‘허가 거부’ 메시지가 나타났다면, 이제는 스크립트가 정상적으로 실행되어야 합니다.

리눅스 셸 스크립트 실행 권한 설정

3. 디버깅 팁

셸 스크립트를 디버깅할 때는 set -x 명령이 매우 유용합니다. 이 명령은 스크립트가 실행되는 동안 각 명령어와 그 인자들이 콘솔에 출력되게 합니다. 이를 통해 스크립트의 어떤 부분에서 문제가 발생하는지 파악할 수 있습니다.

예를 들어, 다음과 같은 간단한 스크립트를 작성해 보겠습니다.

#!/bin/bash

set -x # 디버깅 시작

echo "Hello World"

# 스크립트의 다른 명령들...

set +x # 디버깅 종료

이 스크립트를 실행하면, ‘Hello World’를 출력하기 전에 + echo 'Hello World'라는 줄이 먼저 나타납니다. 이것은 ‘echo’ 명령이 실행되고 있음을 나타냅니다. set +x 명령은 디버깅 모드를 종료시킵니다. 디버깅 모드는 스크립트의 특정 부분에서만 활성화하고 싶을 때 유용하게 사용할 수 있습니다.

이런 식으로 set -xset +x 명령을 활용하여 스크립트의 실행 과정을 확인하고 문제를 해결할 수 있습니다.

관련 이전 게시글

댓글 달기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

위로 스크롤