■■■■■ 특정 키워드 ■■■■■
● $# : 명령입력 라인에서 입력된 인수의 개수를 가짐
● $* : 명령입력 라인에서 입력된 전체의 내용을 포함($1 ~ $n)
● $$ : 쉘 프로그램이 실행되면서 사용된 프로세스의 ID 값
● $! : 쉘 프로그램이 실행시킨 백그라운드 프로세스의 ID 값
#!/bin/sh
echo "=======================" |
[결과] $ ./keyworld.sh
$ ./keyworld.sh 123
$ ./keyworld.sh 123 456 789 |
■■■■■ 조건문에서 사용하는 연산자들 ■■■■■
문자열 체크 | |
[ str ] |
문자열이 NULL인지 체크 => NULL이 아니면 True |
[ -n str ] |
문자열의 사이즈가 0 이상인지를 체크 => 0 이상이면 True |
[ -z str ] |
문자열의 사이즈가 0 인지 체크 => 0 이면 True |
[ strA = strB ] |
A문자열과 B문자열이 같은지 체크 => 같으면 True |
[ strA != strB ] |
A문자열과 B문자열이 다른지 체크 => 다르면 True |
숫자 대소 관계 체크 | |
[ num -gt 100 ] |
num이 100보다 큰지 체크 => 100 초과면 True |
[ num -ge 100 ] |
num이 100보다 크거나 같은지 체크 => 100 이상이면 True |
[ num -lt 10 ] |
num이 10보다 작은지 체크 => 10 미만이면 True |
[ num -le 10 ] |
num이 10보다 작거나 같은지 체크 => 10 이하면 True |
파일 체크 | |
[ -r filename ] |
해당 파일이 읽기 가능한지 체크 |
[ -w filename ] |
해당 파일이 쓰기 가능한지 체크 |
[ -x filename ] |
해당 파일이 실행 가능한지 체크 |
[ -s filename ] |
해당 파일의 사이즈가 0 이상인지 체크 |
[ -d filename ] |
해당 파일이 디렉토리 파일인지 체크 |
[ -f filename ] |
해당 파일이 일반 파일인지 체크 |
[ -h filename ] |
해당 파일이 링크 파일인지 체크 |
조건문의 결합 | |
[ 조건문A -a 조건문B ] |
-a => AND |
[ 조건문A -o 조건문B ] |
-o => OR |
■■■■■ if문 ■■■■■
● if01.sh
#!/bin/sh
echo "if test"
if [ 11 -le 2 ] |
[결과] if test |
● if02.sh
#!/bin/sh
if [ $# -ge 3 ] |
[결과] $ ./if02.sh
$ ./if02.sh 111
$ ./if02.sh 111 222
$ ./if02.sh 111 222 333 |
● if03.sh
#!/bin/sh
echo "점수를 입력하시오."
if [ $num -ge 90 ] |
[결과] $ ./if03.sh
$ ./if03.sh
$ ./if03.sh |
■■■■■ case문 ■■■■■
● case.sh
#!/bin/sh
echo "1. 사용자 목록"
read key
case $key in |
[결과] 출력 -----> |
■■■■■ for문 ■■■■■
● for01.sh
#!/bin/sh
for tmp in AAA BBB CCC |
[결과] $ ls -R
./AAA: ./BBB: ./CCC: |
● for02.sh
#!/bin/sh
for var in `ls` |
[결과] ~ |
● for03.sh
#!/bin/sh
for var in $* |
[결과] $ ./for03.sh ls ls
|
■■■■■ while문 ■■■■■
● while01.sh
#!/bin/sh
x=1 while [ $x -lt 5 ] |
[결과] x = 1 |
● while02.sh
#!/bin/sh
while :
if [ $num -ge 10 ] |
[결과] 숫자를 입력하시오. |
● while03.sh
#!/bin/sh
while :
if [ $num1 -eq 1 ] |
[결과] 숫자를 입력하시오 : 5 10 |
■■■■■ u ■■■■■
● unset.sh
#!/bin/sh
name="snoopy 123" echo "=======================" unset name |
[결과] snoopy 123
|
'프로그램 > UNIX & Linux' 카테고리의 다른 글
[Linux] 자주 사용하는 유닉스(리눅스) 명령어 (0) | 2013.01.03 |
---|---|
[Linux] cp(파일 복사), rm(파일 삭제) (0) | 2012.10.02 |
[Linux] mkdir, rmdir - 디렉토리 생성/삭제 (0) | 2012.10.02 |
[Linux] pwd, cd, cat, tail (0) | 2012.10.02 |
[Linux] ls명령어 (0) | 2012.10.02 |