[RHEL6] 쉘 명령어 4탄(sleep, test, true, while)
본문 바로가기
IT 이야기/Linux 명령어

[RHEL6] 쉘 명령어 4탄(sleep, test, true, while)

by 찬찬이 아빠 2020. 2. 14.
반응형
  16. sleep(대기)

 1) 경로 : /bin/sleep

 2) 요약 : 주어진 시간만큼 대기

 3) 사용 방법 : sleep [옵션] 숫자[단위]

 4) 옵션

 --help : 사용법 출력

 --version : 버전 정보 출력

 

 5) 추가 설명

sleep 명령어는 쉘에서 사용하는 wait 루프와 같은 기능으로 지정한 시간(초 단위) 동안 아무일도 하지 않고 대기 상태가 됩니다. 타이밍이나 백그라운드에서 특정한 이벤트가 일어날때까지 대기할 때 유용합니다. 지정 가능한 숫자[단위]의 기본은 초입니다. 아래는 지정 가능한 시간 단위입니다.

단위 설명
s
m
h 시간
d

 

 

 

  17. test(테스트)

 1) 경로 : /usr/bin/test

 2) 요약 : 파일 유형을 점검하고 값을 비교

 3) 사용 방법 : test [표현식]

                        test [옵션]

 4) 옵션

 --help : 사용법 출력

 --version : 버전 정보 출력

 

 5) 추가 설명

test 명령어는 주로 쉘 스크립트의 조건문에서 사용합니다. test 다음에 나오는 파일 또는 문자열의 인수를 검사하여 참인 경우 0, 거짓인 경우 0이 아닌 값을 반환합니다. test 명령어 자체로 어떤 실행을 하기보다는 조건문과 함께 파일이나 문자열을 판단하는 기준으로 주소 사용합니다.

# if test -e "mbox"; then echo "참" ; fi
참

 

위 예제에서 -e 표현식으로 파일의 존재를 확인하고, 파일이 있으면 참값을 반환합니다. 여기에서는 "mbox"라는 파일이 존재하면 then 이후에 '참'을 보여주고 존재하지 않으면 그냥 종료합니다. 결과갑승로 '참의 출력은 "mbox" 파일이 있음을 판단할 수 있습니다.

아래는 파일이나 문자열을 판단하는 표현식입니다.

표현식 설명
-b 파일 만약 블록 특수 파일인 경우 참
-c 파일 만약 문자 장치 파일인 경우 참
-d 파일 만약 디렉터리면 참
-e 파일 만약 파일이면 참
-f 파일 만약 보통 파일이면 참
-g 파일 만약 set-group-id 파일이면 참
-k 파일 만약 '"sticky" 비트 파일이면 참
-L 파일 만약 심볼 링크 파일이면 참
-p 파일 만약 파이프 파일이면 참
-r 파일 만약 읽기 가능한 파일이면 참
-s 파일 만약 0보다 큰 크기를 갖는 파일이면 참
-t [fd] 만약 fd가 터미널 상에서 열려 있으면 참. 만약 fd가 생략되면 기본값은 1
-u 파일 만약 파일이 존재하고 set-user-id 비트 설정을 가지면 참
-w 파일 만약 쓰기가 가능한 파일이면 참
-O 파일 만약 파일이 존재하고 유효 사용자 ID의 소유이면 참
-G 파일 만약 파일이 존재하고 유효 그룹 ID의 소유이면 참
파일1 -nt 파일2 만약 파일1이 파일2보다 최근에 생겼거나 수정되었다면 참
파일1 -ot 파일2 만약 파일1이 파일2보다 오래된 것이면 참
파일1 -ef  파일2 만약 파일1과 파일2가 같은 장치, 같은 아이노드 번호를 갖는다면 참
-z 문자열 만약 문자열의 길이가 0이면 참
-n 문자열 문자열의 길이가 0이 아니라면 참
문자열1 = 문자열2 두 문자열이 같으면 참
문자열 != 문자열2 두 문자열이 같지 않으면 참
!표현식 표현식이 거짓이면 참
표현식1 -a 표현식2 표현식1과 표현식2가 둘다 참이면 참
표현식1 -o 표현식2 표현식 1 또는 표현식2 중에 하나라도 참이면 참

 

 

  18. ture(참(0)을 반환)

 1) 경로 : /bin/true

 2) 요약 : 언제나 반드시 참 값을 반환

 3) 사용 방법 : true [옵션]

 4) 옵션

 --help : 사용법 출력

 --version : 버전 정보 출력

 

 5) 추가 설명

언제나 참 값을 반환하는 명령어입니다. 주로 쉘 스크립트에서 조건문 중 참을 반환할 때 쓰입니다. 참일 경우는 "0"을 반환합니다.

 

 

 

  19. while(while 루프문)

 1) 요약 : while을 이용한 루프문

 2) 사용 방법

   while

   do

        명령행

   done

 

 3) 추가 설명

while을 이용한 루프문으로 조건이 참이면 do를 실행하고 거짓이 입력될 때가지 루프를 돕니다. test 명령어를 이용한 조건 검사도 실행합니다.

 

<while 스크립트(파일명 : whilescript)>

스크립트 설명
#!/bin/bash bash 쉘로 스크립트 실행
j="0" 변수 j를 0으로 선언
while [ "$j" != "3" ] while 루프로 변수 j가 3이 아니면 참

do

   let "j += 1"

   echo "$j"

done

while 이 참일 경우 실행

let 명령은 수식을 처리. echo로 현재 변수 j의 값을 보여줌

변수 j가 3일 경우 done 아래를 실행

echo "스크립트 종료"

"스크립트 종료" 문자열 출력

 

<스크립트 실행>

# ./whilescript
1
2
3
스크립트 종료
반응형

댓글