본문 바로가기

IT/셸 스크립트8

셸 스크립트 5. 함수 셸에서도 함수를 사용할 수 있다. 아래와 같이 sample7.sh 를 생성하고 실행권한을 주자 #!/bin/sh func () { echo $1 + $2 = `expr $1 + $2` echo $1 - $2 = `expr $1 - $2` } a=10 b=3 func $a $b c=5 d=9 func $c $d 함수는 셸 스크립트 앞부분에 작성하고 함수명() { 처리 내용 }의 형식으로 함수를 만들 수 있다. 함수 인수는 $1, $2 ... 으로 사용 가능하다 함수를 사용할 땐 위 예시의 func $a $b 와 같이 사용할 함수 이름 뒤에 추가적으로 인수를 적어주면 된다. 2023. 2. 3.
셸 스크립트 4. 옵션 처리 셸 스크립트 실행 시 명령줄에 옵션을 넣을 수도 있다 셸 내부 명령어인 getopts 명령어를 사용하면된다. 아래와 같이 sample6.sh를 만들고 chmod로 실행 권한을 주자. #!/bin/sh while getopts ab:c: OPT; do case $OPT in a) OPTION=a ;; b) OPTION=b; ARG=$OPTARG ;; c) OPTION=c; ARG=$OPTARG ;; esac done shift `expr $OPTIND - 1` echo OPTION: $OPTION echo ARG: $ARG echo '$1:' $1 getopts 명령어는 while과 case를 조합해서 사용한다. while getopts 옵션1옵션2: OPT; do 인수가 필요한 옵션에는 뒤에 :를 붙여준.. 2023. 2. 2.
셸 스크립트 4. 반복문 1. for문 for문을 사용하여 반복작업을 처리할 수 있다. 아래와 같이 sample4-1.sh를 작성한 뒤 chmod로 실행권한을 줘 보자. #!/bin/sh for name in file1 file2 file3; do touch $name done for 변수명 in 문자열1 문자열2 ... 구문은 지정한 문자열을 하나씩 변수에 대입해서 문자열 개수만큼 do ~ done 사이의 처리를 반복 실행한다. 위 실행결과를 보면 touch 로 file1 file2 file3 파일을 생성한 것을 알 수 있다. 추가적으로 백틱(`)을 이용한 방법이 있다. 아래와 같이 sample4-2.sh 를 생성하고 실행권한을 주자. #!/bin/sh for i in `seq 1 3`; do echo hello user$i .. 2023. 2. 1.
셸 스크립트 3. 조건문 프로그래밍 언어에서 조건문을 사용하듯이 셸 스크립트에서도 조건문을 사용할 수 있다. 1. if 문 사용 아래와 sample3-1.sh 파일을 만들어서 chmod 로 실행 권한을 주자 #!/bin/sh if [ $1 = tom ] then echo Hello! tom. elif [ $1 = jerry ] then echo Hello! jerry. else echo who are you? fi 인자를 뒤에 넣어 실행해 보면 다음과 같은 결과를 볼 수 있다. 프로그래밍 언어 if 문과 유사하다 우선 if [ ] 대괄호 안에 조건을 입력하고 조건이 참이면 then 을 실행한다. 조건을 추가하려면 elif 를 사용하면되고 어떠한 조건에도 참이 나오지 않으면 최종적으로 else가 실행된다. 그리고 제일 마지막에 i.. 2023. 1. 31.
셸 스크립트 2. 변수 사용 1. 변수 사용하기 셸 스크립트에서도 셸 변수를 사용할 수 있다. sample2-1 파일을 작성해보자 #!/bin/sh str1=abc str2=def echo $str1 echo $str2 echo ${str1}${str2}ghi str3=${str1}${str2}123 echo $str3 일기 권한을 추가한 뒤 실행해보면 echo 인 부분만 출력이 되었는데 변수가 사용되었음을 알 수 있다. 2. 인수 사용하기 일반 명령어 처럼 스크립트를 실행 할 때 인수를 사용할 수도 있다. 다음과 같이 sample2-2.sh 파일을 작성해준다. #!/bin/sh echo arg1 is $1 echo arg2 is $2 echo arg amount is $# shift echo arg1 is $1 실행 권한을 추가한.. 2023. 1. 30.
셸 스크립트 1. 작성과 실행 명령어를 텍스트 파일로 작성해서 한꺼번에 실행하는 방법이 있는데, 이런 기능을 셸 스크립트 라고부란다. 셸은 단순한 명령어 실행 외에도 조건 분기나 반복문 같은 프로그래밍 언어 기본 기능이 있다. 다음과 같은 내용으로 sample1.sh 파일을 만들어 보자 #!/bin/sh echo 'hello world' date 첫번째 줄 #! 다음에 셸 경로를 적어준다. /bin/sh 셸을 사용해서 셸 스크립트를 실행하겠다는 의미다. 작성한 셸 스크립트를 실행하기 전에 아래와 같이 chmod 명령어로 실행 권한을 줘야한다. $ chmod u+x sample1.sh 실행권한을 추가한 뒤 $ ./sample1.sh 위와 같이 입력하면 셸 스크립트를 실행할 수 있다. .sh 파일에 입력한 echo 'hello world.. 2023. 1. 29.