쉘 스크립트에서의 함수

 

난 csh은 모르니까. 그냥 bash로 얘기한다.

 

선언은 다음과 같다.

function 함수이름 {

}

 

이렇게 선언하고, 다음과 같이 사용한다.

 

 

#!/bin/bash

workspace="/home/www/work"

function do_run {
    CMD=$@
    eval 'expect.pl -s "rlogin -l www a69" -c "$CMD;exit" -timeout 600'
}

TARGET=$1
if [ -z $TARGET ]; then
    echo "Usage : rsync-images.sh "
    exit;
fi

CMD="rsync -av --exclude '*/CVS/*' /data/$TARGET han::avatar/"

echo "Target Servers a69"
do_run $CMD
~

 

파라미터는 함수에서 $1 $2  이렇게 토큰단위로 쓸 수 있고, 만약 전체 스트링을 다 받고 싶다면, $@ 이렇게 써주면 전체를 함수안으로 그대로 넣어줄 수 있다.

 

 

'c or linux' 카테고리의 다른 글

gethostbyname, getaddrinfo 사용한 샘플 소스  (0) 2008.02.26
awk상에서 시스템 명령어 사용하기  (0) 2008.02.13
ulimit  (0) 2007.09.10
crontab 에러  (0) 2007.09.08
crontab 디렉토리  (0) 2007.09.08
Posted by '김용환'
,