ShellScript(쉘 스크립트) 실행 옵션 입력받기
실제 소프트웨어 개발간 알게된 정보들을 기록 및 공유 해보도록 하겠습니다.
- 풀스택 개발&운영 고통 속에서..
쉘 스크립트롤 만들다보면 내가 만든 쉘을 실행함과 동시에 옵션을 넣고싶은 경우가 있다.
옵션을 넣어 동작하게 만들면 하나의 기능만 수행하는 스크립트 파일 여러개가 아닌
하나의 스크립트로 여러 기능하도록 만들어 볼 수가 있습니다.
빠르게 소스 부터 갑니다.
소스
#/bin/sh
# Script Ver. 0.0.1 (Linux)
export LANG=ko_KR.UTF8
PRODUCT="OracleRDBMS"
OS="Linux"
VERSION="0.0.1"
if [ "$1" == "-v" ]; then
echo "TestScript Version. $OS $PRODUCT $VERSION"
exit 0
fi
echo "No Option"
# 여러가지 기능들 ...
exit 0
제품명(PRODUCT), 운영체제(OS), 현재 스크립트 버전(VERSION) 등을 변수에 담아 스크립트의 현재 버전을 출력해보는 스크립트입니다.
서버에서 돌려볼까요?
1. 스크립트 파일 생성
TestScript.sh 이름을 가진 스크립트 파일을 vi 편집기로 열겠습니다.
명령어:
vi TestScript.sh
2. 소스 붙여넣기
현재 까만화면에 아무내용이 없을겁니다.
소문자 'i' 를 눌러 insert(입력) 모드로 변경합니다.
화면 하단에 INSERT라는 문구가 뜨면 위 소스를 붙여넣습니다.
명령어:
?? 컨트롤 + C 정도는 아셔야...
Putty의 경우 Shift + Insert키 또는 '마우스 오른쪽 클릭'하시면 붙여넣기가 됩니다 하하
ESC키 + :wq + Enter키 를 입력하여 스크립트를 저장합니다.
3. 스크립트 파일 권한 변경
ls 혹은 ls -l 명령어로 생성된 파일을 확인해보면 스크립트 실행권한이 없을 수 있습니다.
실행권한을 추가해줍니다.
명령어:
chmod 775 TestScript.sh
🧐 각각 r=읽기, w=쓰기, x=실행권한을 뜻하며,
1 자리는 파일, 폴더, 링크를 의미
2~4 자리는 파일 소유자의 권한
5~7 자리는 파일 그룹의 권한
8~10 자리는 그 외 유저들의 권한을 의미합니다.
4. 스크립트 실행
그냥 한번 실행해볼까요?
명령어:
./TestScript.sh
뒤에 옵션을 넣지 않았으니 IF문 밖에 있는 No Option이 출력되었습니다.
그렇다면, 옵션을 넣고 실행해보겠습니다.
명령어:
./TestScript.sh -v
🎉🎉짠 옵션이 들어가니 IF문 안에 있던 소스가 동작되었습니다.
일반적으로 실행할 파일의 버전을 확인할때 -v나 -version등 옵션을 많이 입력하더이다~
감사합니다.
Command(리눅스 명령어) 특정 문자 기준 문자열 자르기(split) (0) | 2023.06.20 |
---|---|
ShellScript(쉘 스크립트) 다른 스크립트에 변수 넘기기 (0) | 2023.06.19 |