본문으로 바로가기

Shell 프로그래밍

category Security/Web 2007. 3. 9. 01:43
반응형
Shell 프로그래밍이란 일반적으로 사용하는 명령어들을 몇 개 모아서 하나의 파일로 만들어 실행시키는 프로그램이며 자주 사용되는 명령어들을 하나의 셸 프로그램으로 만들어 놓으면 매번 여러 개를 타이핑하지 않고 하나의 작업 명령으로 실행시킬 수 있는 것이다. 셸은 사용자가 Linux 시스템에 로그인 하면 실행되어 사용자가 터미널에서 입력하는 모든 명령어들을 해석하고 읽으며 입력과 출력을 제어한다. 셸이 수행하고 있는 명령어들을 저장하고 있는 파일을 ‘셸 스크립트(Shell Script)'라 하며, 이러한 파일 안에 일련의 명령어를 쓰는 것을 ’셸 프로그래밍(Shell Programming)' 이라고 한다.


[예제1] ex.sh

#!/bin/sh

echo 이 스키립트는 시간을 보여주고 현재의 디렉토리 경로를

echo 출력한 후에 /root 디렉토리의 목록을 화면에 출력하는

echo 예제 파일입니다.

date

pwd

ls /root


[예제2] question.sh

#!/bin/sh

echo -n “우리 나라의 영문 국가명은?”

read nation

echo -n "우리나라의 국보 1호는?“

read kukbo

echo 영문 국가명 : $nation

echo 국보 1호 : $kukbo


[예제3] if.sh

#!/bin/sh


A=1

String="이것은 if문 예제입니다.”

String1="주어진 값이 0이하입니다.”

String2="주어진 값이 0이상입니다.”


echo $String


if [ $A -gt 0 ]

then

       echo $String2

else

       echo $String1

fi



조건식

표 현 방 식

참이 되는 경우

[ $A -eq $B ]

A와 B가 값이 같은 경우

[ $A -ne $B ]

A와 B가 값이 다른 경우

[ $A -gt $B ]

A가 B보다 큰 경우

[ $A -lt $B ]

A가 B보다 작은 경우

[ $A -ge $B ]

A가 B보다 크거나 같은 경우

[ $A -le $B ]

A가 B보다 작거나 같은 경우



[예제4] time.sh

#!/bin/sh

until date | grep "15:04:00"

do

       sleep 0

done

echo "약속시간이야!”


[예제5] continue.sh

#!/bin/sh

while :

do

       echo "오늘 즐거운 하루였어?”

       echo "[예/아니오]”

       read key

       if [ "$key" = "아니오”  ]

       then

               echo "$key가 뭐니 다시물어 볼게..”

               continue

       else

               echo "그럼 잘자... 좋은 꿈꾸고...”

               break

       fi

done

반응형

'Security > Web' 카테고리의 다른 글

Log Injection  (0) 2007.03.09
Cookie SQL Injection  (0) 2007.03.09
리눅스 find 명령어  (0) 2007.03.09
일반적인 리눅스 명령어 모음  (0) 2007.03.09
권한설정 chmod (change mode)  (0) 2007.03.09