Technique/LPIC
파일의 체크
kaelina
2019. 10. 20. 15:49
반응형
파일이 존재하는가 하지 않은가에 따라 스크립트의 동작을 바꾸는 것과 같은 파일에 대한 정보를 습득할 필요가 있다. 그럴 경우에는 test 커맨드를 사용한다 test 커맨드에는 별도의 서식으로 []가 있다.
test 조건문
[ 조건문 ]
조건문에 적혀있는 식을 평가하여 참 이라면 0을 거짓이라면 0 이외의 값을 돌려준다. 2번째의 서식에서는 [의 뒤와 ]의 앞에 공백이 필요하다. 조건문에 사용되는 다양한 식은 아래에 있다.
조건식 | 실행결과 |
파일 형식의 테스트 | |
-f 파일 | ( 디렉터리등을 제외한 ) 파일이 있으면 참 |
-d 디렉터리 | 디렉터리가 있으면 참 |
-r 파일 | 파일이 존재하며 읽기 가능하다면 참 |
-w 파일 | 파일이 존재하며 파일에 쓰기가 가능하면 참 |
-x 파일 | 파일이 존재하며 실행 가능하다면 참 |
-s 파일 | 사이즈가 0 보다 큰 파일이라면 참 |
-L 파일 | 심볼릭링크인 파일이 있다면 참 |
파일 특성의 테스트 | |
-e 파일 | 파일이 있다면 참 |
파일1 -nt 파일2 | 파일1이 파일2보다 수정 시간이 새롭다면 참 |
파일1 -ot 파일2 | 파일1이 파일2 보다 수정시간이 오래되었다면 참 |
수치의 테스트 | |
수치1 -eq 수치2 | 수치1과 수치2가 같은 값이라면 참 |
수치1 -ge 수치2 | 수치1이 수치2보다 크거나 같다면 참 |
수치1 -gt 수치2 | 수치1이 수치2보다 크면 참 |
수치1 -le 수치2 | 수치1이 수치2보다 작거나 같다면 참 |
수치1 -lt 수치2 | 수치1이 수치2보다 작다면 참 |
수치1 -ne 수치2 | 수치1과 수치2가 같지 않다면 참 |
문자열의 테스트 | |
-n 문자열 | 문자열의 길이가 보다 크다면 참 |
-z 문자열 | 문자열의 길이가 0이라면 차 |
문자열1 = 문자열2 | 2가지의 문자열이 같다면 참 |
문자여1 != 문자열2 | 2가지의 문자열이 서로 다르다면 참 |
테스트의 논리결합 | |
! 조건 | 조건식이 거짓이라면 참 |
조건1 -a 조건2 | 양방의 조건식이 참이라면 참 (and) |
조건1 -o 조건2 | 둘중 하나의 조건식이 참이라면 참 (or) |
반응형