본문 바로가기

Web Develop Tech/Documents

쉘 스크립트 - 표현식


원본출처: http://bban2.tistory.com/82


- 표현식 : 산술비교 , 문자열비교 , 파일조건


[산술비교]

- [ $A -eq $B ] : A와 B가 같으면 참 (Equal)

- [ $A -ne $B ] : A와 B가 같지 않으면 참 (Not Equal)

 

- [ $A -gt $B ] : A가 B보다 크면 참 (Greater Then)

- [ $A -ge $B ] : A가 B보다 크거나 같으면 참 (Greater Equal)

 

- [ $A -lt $B ] : A가 B보다 작으면 참 (Less Then)

- [ $A-le $B ] : A가 B보다 작거나 같으면 참 (Less Equal)

 

- [ ! $A ] : A가 참이면 거짓, 거짓이면 참

 

- [ $A -a $B ] : $A AND $B의 결과, 둘 다 참이면 참

- [ $A -o $B ] : $A OR $B의 결과 , 둘 중 하나만 참이면 참

 

 [문자열비교]

- [ string ] : string 이 빈 문자열이 아니면 참

 

- [ string1 = string2 ] : 두 문자열이 같으면 참

- [ srting1 != string2 ] : 두 문자열이 다르면 참

 

- [ -n string ] : 문자열이 null (빈문자열)이 아니면 참

- [ -z string ] : 문자열이 null (빈문자열)이면 참

 

[파일조건]

- [ -b FILE ] : FILE 이 블럭디바이스이면 참

- [ -c FILE ] : FILE 이 문자디바이스이면 참

 

- [ -d FILE ] : FILE 이 디렉토리이면 참

- [ -e FILE ] : FILE 이 존재하면 참

- [ -f FILE ] : FILE 이 존재하고 크기가 0보다 크면 참

 

- [ -g FILE ] : FILE 이 SGID 가 있으면 참

- [ -u FILE ] : FILE 에 SUID 가 있으면 참

 

- [ -k FILE ] : FILE 에 Sticky bit 가 있으면 참

- [ -L FILE ] : FILE 이 심볼릭링크이면 참

- [ -S FILE ] : 소켓디바이스이면 참

 

- [ -r FILE ] : 현재 사용자가 읽을 수 있는 파일이면 참

- [ -s FILE ] : 파일이 비어있지 않으면 참

 

- [ -t FD ] : FD (File Descriptor)가 열려진 터미널이면 참

 

- [ -w FILE ] : 현재 사용자가 쓸 수 있는 파일이면 (Writable file) 참

- [ -x FILE ] : 현재 사용자가 실행할 수 있는 파일이면  (Excute file) 참

 

- [ -O FILE ] : FILE 의 소유자가 현재 사용자이면 참

- [ -G FILE ] : FILE 의 그룹이 현재 사용자의 그룹과 같으면 참

 

- [ FILE1 -nt FILE2 ] : FILE1 이 FILE2 보다 새로운 파일 (최근의 파일)이면 참

- [ FILE1 -ot FILE2 ] : FILE1 이 FILE2 보다 오래된 파일이면 참

- [ FILE1 -ef FILE2 ] : FILE1 이 FILE2 의 하드링크, 즉 I-node 값이 같으면 참