함수 전자계산기

제길슨 잠 온다.


그래서 말인데


지금 부터 내가 할것은


cd에서 특이한 이동이다



  • cd $HOME

  • cd -


 


그건 그렇고 이제 할꺼는


#! /usr/bin/ksh

# function define

pushd()

{

        now_dir=`pwd`

}

popd()

{

        cd $now_dir

}



pwd

# excute function

pushd

cd /tmp

pwd

popd

pwd

로 된 함수를 보는 거다. 흠.


 


killproc


프로세스 이름만 넣으면 찾아서 알아서 지기는 플그램.



#! /usr/bin/ksh



killproc()

{

        if [ $# -eq 0 ]

        then

                echo "Usage $0 process_name"

        else

                myid=`id -un`

                kpid=`ps -ef | grep $myid | grep $1 | grep -v "grep $1" | awk '{print $2}'

`

                #echo $kpid

                if [ "$kpid" = "" ]


# if [ ${kpid}S = "S"}




                then

                        echo "$1 is not running"

                else

                        kill $kpid

                fi

        fi

}



 


shift


시프트 : 밀기 연산


한개 씩 처리하고 뒤에 것을 앞으로 당긴다.


예) 디스크 사용자의 이름을 받으면 그사람의 디렉토리 양을 조사하고 인자가 없으면 모든 사용자의 디렉토리를 조사한다.


#! /usr/bin/ksh



if [ $# -eq 0 ]

then

        # all user



        du -s `awk -F: '{ print $6 } ' /etc/passwd` > homedir.txt 2>/dev/null

else

        # args

        rm -f homedir.txt

        touch homedir.txt

        while [ $# -gt 0 ]

        do

                upath=`grep ^$1 /etc/passwd | awk -F: '{ print $6 }'`

                du -s $upath >> homedir.txt 2>/dev/null

                shift

        done

fi

수정 버젼


#! /usr/bin/ksh



dusave()

{

        if [ -d $1 ]

        then

                du -s $1 >>homedir.txt 2>/dev/null

        else

                echo "\"$1\" is NOT such "

        fi

}



rm -f homedir.txt



if [ $# -eq 0 ]

then

        # all user




         apath=`awk -F: '{ print $6 } ' /etc/passwd`

        for upath in $apath

        do

                dusave $upath

        done

else


args

        touch homedir.txt

        while [ $# -gt 0 ]

        do

                upath=`grep ^$1 /etc/passwd | awk -F: '{ print $6 }'`

                dusave $upath

                shift

        done

fi



 


이 글은 스프링노트에서 작성되었습니다.


트랙백

이 글과 관련된 글 쓰기 (트랙백 보내기)
TrackbackURL : http://hmoo.egloos.com/tb/4032395 [도움말]

덧글

  • 2009/12/11 05:53 # 답글 비공개

    비공개 덧글입니다.
댓글 입력 영역