관리 메뉴

IT창고

쉘 스크립트 기초 2 본문

프로그래밍/Shell Script

쉘 스크립트 기초 2

방구석여포 2020. 10. 7. 01:55

이전 글에 이어서 진행합니다.

2020/10/06 - [IT] - 쉘 스크립트 기초 1

 

쉘 스크립트의 간단한 작성과 변수 사용해 대해 확인했는데 쉘 스크립트를 사용 후 종료할때는 종료 상태로 만들어줘야 합니다. 

 

아래에 리눅스 종료 상태 코드 일부입니다.

상태 코드 설명
0 성공적으로 완료
1 알 수 없는 일반적인 오류
126 명령 실행 불가
255 종료 상태 범위 초과

 

다음은 쉘 스크립트에서 사용할 숫자 입니다. 

쉘 스크립트에서 연산을 사용하기 위해 expr 명령어와 [ ]의 대괄호를 사용합니다. 

 

위의 사진과 같은 결과는 아래의 소스코드에서 확인 가능한 쉘 스크립트로 만들어졌습니다.

#!/bin/bash

gsk1=10
gsk2=$[$gsk1 * 5]
gsk3=$(expr $gsk2 / $gsk1)


expr 1 + 2 ; expr 2 \* 3
echo ""
expr $gsk1 - $gsk2
echo ""
echo $gsk3

exit  0


gsk1 변수에는 숫자를 gsk2 변수에는 대괄호를 사용하였으며 gsk3에서는 변수끼리 연산하였습니다. expr 명령어로 간단한 사칙연산을 시도해볼수 있으며 expr 명령어를 쉘에서 사용 시 *의 경우 그냥 곱셈으로 인식하지 않습니다. 쉘이 잘못 해석할수 있는 문자를 구별하기 위해 \*를 사용하여 정상적으로 곱셈을 실행 할 수 있습니다. 

 

추가로 bash 쉘에서는 정수만 연산이 가능합니다.

 

마지막으로 쉘 스크립트의 출력결과를 파일에 저장해보도록 하겠습니다. 

위의 사진과 같은 결과는 아래의 소스코드에서 확인 가능한 쉘 스크립트로 만들어졌습니다.

#!/bin/bash


ps -ef | grep httpd > gsk.txt
ps -ef | grep -i mysql >> gsk2.txt
echo "" >> gsk2.txt
echo "shell script~!" >> gsk2.txt

exit  0

 

쉘 스크립트에 리다이렉션을 사용하여 출력결과를 gsk.txt, gsk2.txt파일에 저장시켰습니다. 

리다이렉션이나 파이프에 대한 추가 정보는 아래에 글을 참고 합니다.

2017/08/17 - [서버운영/Linux] - 리눅스를 사용하기 위한 기본 명령어2

 

'프로그래밍 > Shell Script' 카테고리의 다른 글

쉘 스크립트 for문  (0) 2020.11.03
쉘 스크립트 if문 3  (0) 2020.10.19
쉘 스크립트 if문 2  (0) 2020.10.17
쉘 스크립트 if문 1  (0) 2020.10.10
쉘 스크립트 기초 1  (0) 2020.10.06
Comments