셸 프로그래밍
셸에서 일반적으로 사용하는 명령어들을 모아서 하나의 파일로 만들어 실행시킨 프로그램
셸 스크립트
셸이 수행하고 있는 명령어들을 저장하고 있는 파일
간단한 예제1)
1 2 3 4 5
| #!/bin/zsh
cat > helloWorld.sh # helloWorld 셸 파일을 생성한다.
echo "HelloWorld!"
|
간단한 예제2)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| #!/bin/zsh
echo -e "\t - 시스템 환경설정 출력 - \t"
echo -n "HOSTNAME:\t" # new line 을 추가하지 않는다. echo $HOSTNAME
echo -n "USER:\t" echo $USER
echo -n -e "SHELL:\t" echo $SHELL
echo -n -e "pwd:\t" pwd
echo -n -e "ls:\t" ls -Alh
|
간단한 예제3)
1 2 3 4 5 6 7 8 9
| #!/bin/zsh
cat > question.sh
echo -n -e "\t우리나라의 영문 국가명은?\t"
# 표준입력을 받아 변수에 저장하는 역할. read -n5 -t10 nation # -n 입력 문자수 지정 -t 시간 지정 echo -n -e "영문국가명:\t" $nation
|
간단한 예제4)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
| #!/bin/zsh
# 조건문
cat > smoker.sh
echo -e -n "\t흡연자의 수를 입력하시오.\t" read smoker
echo -e -n "\t비흡연자의 수를 입력하시오.\t" read no_smoker
if [$smoker -lt $no_smoker] # 흡연자보다 비흡연자가 크면 then echo "비흡연자가 " $[no_smoker-smoker]"명 많습니다."; elif [$smoker -eq $no_smoker] # 같다면 then echo "흡연자와 비흡연자가 같습니다." else echo "흡연자가 " $[smoker-no_smoker]"명 많습니다." fi
|
간단한 예제4)
1 2 3 4 5 6 7
| #!/bin/zsh
case $x in pattern) ;; esac
|
간단한 예제5)
1 2 3
| for (( i = 0; i < n; i++ )); do done
|
간단한 예제6)
1 2 3
| while [ $INPUT != "bye" ]; do done
|
간단한 예제7)
1 2 3
| until [ $INPUT == 5 ]; do done
|