Perl 에서 File, 또는 Directory를 테스트 할때 사용.

"-r, -w, -x, -o" 와 "-R, -W, -X, -O" 의 차이점은 SetUID 여부이며, Perl 파일이 실행될때, SetUID로 동작해서, Effective UID/GID 하에서 돌때, 대문자로 된 file test 지시자는 SetUID를 무시한 Real UID/GID를 기준으로 판단한다.

File test 	Meaning 
-r 	File or directory 가 읽기 가능한지 (SetUID가능)
-w 	File or directory 가 쓰기 가능한지 (SetUID가능)
-x 	File or directory 가 실행 가능한지 (SetUID가능)
-o 	File or directory 가 실행하는 user가 owner인지를 판단 (실제 UID, GID 기준)

-R 	File or directory 가 읽기 가능한지 (실제 UID, GID 기준)
-W 	File or directory 가 쓰기가 가능한지 (실제 UID, GID 기준)
-X 	File or directory 가 실행 가능한지 (실제 UID, GID 기준)
-O 	File or directory 가 실행하는 user가 owner인지를 판단 (실제 UID, GID 기준)

-e 	File or directory 가 존재하는지
-z 	File 이 존재하고 크기가 "0byte"인지 (디렉토리는 항상 false)
-s 	File or directory 가 존재하고 "0byte"가 아닌지
-f 	text file 인지
-d 	directory 인지
-l 	symbolic 인지
-S 	socket 인지
-p 	pipe 인지  (“fifo”류)
-b 	block-special file (마운트가 가능한 류)
-c 	character-special file (I/O device 류)
-u 	File or directory 가 setuid 상태인지
-g 	File or directory 가 setgid 상태인지
-k 	File or directory has the sticky bit set
-t 	The filehandle is a TTY
        (as reported by theisatty()system function; filenames can’t be tested by this test)
-T 	File looks like a “text” file
-B 	File looks like a “binary” file
-M 	Modification age (measured in days)
-A 	Access age (measured in days)
-C 	Inode-modification age (measured in days) 

출처 : http://www.devshed.com/c/a/Perl/File-Tests-in-Perl/

Posted by 지누스

댓글을 달아 주세요

  1. 용식 2012.02.10 22:57 신고  댓글주소  수정/삭제  댓글쓰기

    저 다녀가요 :)



티스토리 툴바