본문 바로가기
반응형

쉘 스크립트3

[Linux] 쉘 스크립트(shell script) - 7편 서비스 등록(systemd) systemd는 현대 리눅스 배포판에서 가장 널리 사용되는 초기화 (init) 시스템 및 시스템 및 서비스 매니저입니다. systemd는 시스템 부팅 과정을 관리하며, 서비스들을 시작, 중지, 재시작하는 등의 작업을 담당합니다. systemctl은 systemd의 주요 관리 도구로, 서비스의 상태를 확인하거나 시작/중지/재시작하는 데 사용됩니다. systemctl status [service-name]: 서비스의 상태 확인 systemctl start [service-name]: 서비스 시작 systemctl stop [service-name]: 서비스 중지 systemctl restart [service-name]: 서비스 재시작 systemctl enable [service-name]: 부팅 시 서비.. 2023. 8. 31.
[Linux] 쉘 스크립트(Shell script) 6편 - shellcheck(쉘체크) shellcheck는 쉘 스크립트에 대한 정적 분석 도구로, 스크립트의 문제점이나 개선할 수 있는 부분을 찾아줍니다. Bash, sh, dash, ksh 스크립트를 지원하며, 작성 중인 쉘 스크립트의 품질을 향상시키고, 버그, 일반적인 실수 또는 사용하지 않는 코드를 발견하는 데 유용합니다. shellcheck의 주요 기능: 문법 오류: 일반적인 문법 오류나 타이포를 감지합니다. 미사용 변수: 스크립트 내에서 선언되었지만 사용되지 않는 변수를 찾아줍니다. 코드 품질: 코드에서 개선할 수 있는 부분이나 더 나은 방법을 제안합니다. 보안: 안전하지 않은 코드 또는 취약한 패턴을 감지하고 권장 사항을 제공합니다. 1. 설치하기 대부분의 패키지 관리자를 통해 shellcheck를 설치할 수 있습니다. sudo .. 2023. 8. 31.
[Linux] 쉘 스크립트(Shell script) 5편 - 트랩(trap) 사용하기, 에러 옵션(set -e, set -o) 트랩(trap) 사용하기 trap 명령어는 시그널을 잡아내어 해당 시그널을 받았을 때 실행할 명령이나 작업을 정의할 수 있게 해줍니다. 즉, 특정 상황(예: 스크립트 종료, 오류 발생 등)에서 원하는 명령을 실행하도록 설정하는 도구입니다. 스크립트가 비정상적으로 종료될 때나 특정 시그널을 받을 때 정리 작업이나 로깅 작업 등을 수행하고자 할 때 유용하게 사용될 수 있습니다. 기본 구조: trap 'commands' signals 예시 1: 정리 작업을 위한 trap 아래의 스크립트는 일부 작업을 수행한 후 종료될 때 정리 작업을 수행합니다. #!/bin/bash # 정리 작업을 위한 함수 정의 cleanup() { echo "Cleaning up temporary files..." rm -f /tmp/m.. 2023. 8. 31.
반응형