테스트 사이트 - 개발 중인 베타 버전입니다

find - 파일찾기

· 19년 전 · 4719 · 5
find 명령어는 파일 시스템에서 주어진 조건으로 파일을 찾는다.

사용법을 살펴보자.
find 대상디렉토리 검색 조건 처리 방법


대상 디렉토리 : 찾기를 시작할 디렉토리를 지정한다.

검색 조건 : 찾을 조건을 지정한다.
-name filename 파일 이름으로 찾는다.

-atime +n access time 이 n일 이전인 파일을 찾는다.
-atime -n access time이 n일 이내인 파일을 찾는다.
-mtime +n n일 이전에 변경된 파일을 찾는다.
-mtime -n n일 이내에 변경된 파일을 찾는다.
-perm nnn 파일 권한이 nnn인 파일을 찾는다.
-type x 파일 타입이 x인 파일들을 찾는다.
-size n 사이즈가 n이상인 파일들을 찾는다.
-links n 링크된 개수가 n인 파일들을 찾는다.

-user username user이름으로 찾는다.

-group groupname group 이름으로 찾는다.


처리방법 : 찾은 파일을 어떻게 할 것인지를 지정한다.
-print 찾은 파일의 절대 경로명을 화면에 출력한다.
-exec cmd {}\;  찾은 파일들에 대해 cmd 명령어를 실행한다.


예를 들어보자.
$ find /user4 -name test* -print

/user4 아래에서 파일이름이 test로 시작하는 모든 파일을 찾아서 화면에 보여준다.

$ cd /
$ find . -name ping -print

root 디렉토리 밑에서 파일이름이 ping인 파일을 찾아 절대 경로명을 화면에 출력한다.

$ cd /
$ find /usr -name *.c -print

/usr 밑에 이름이 .c로 끝나는 모든 파일들을 찾아 경로명을 보여준다.

$ cd /
$ find $home -name who.txt -print

home 디렉토리 아래에 who.txt라는 파일을 찾아 경로명을 보여준다.

$ cd /
$ find . -type d -print

파일 타입이 d인 파일을 찾아 경로명을 화면에 출력한다.

$ cd /
$ find /dev -type c -print

/dev디렉토리 아래에서 파일 타입이 c인 파일을 찾아 경로명을 보여 준다.

$ cd /
$ find . -perm 700 -print

파일 권한이 700인 파일을 찾아준다.

$ cd /
$ find . \ ( -perm 400 -o -perm 200 ) -print

파일 권한이 400인 파일과 200인 파일을 찾아준다.
(주의 : “\”의 앞뒤에 space 가 반드시 있어야 한다.)

$ cd /
$ find . -size +1024 -print

파일의 블럭 크기가 1024 이상인 파일을 찾아준다.

$ cd /
$ find . -name core -size +2048 -print

파일 이름이 core이고 크기가 2048블럭 이상인 파일을 찾아준다.

$ cd /
$ find . -user unix01 -print

파일 소유자가 unix01인 파일을 찾아준다.

$ cd /
$ find . -group unix -print

사용자그룹이 unix인 파일을 찾아준다.

$ cd /
$ find . -atime +30 -print

30일 이전에 억세스되었던 파일을 찾는다.

$ cd /
$ find . -mtime -7 -print

7일 이내에 수정된 적이 있는 파일을 찾는다.

$ cd /
$ find . -name core -exec ls -l {} \;

이름이 core인 파일을 찾아서 ls -l 한다.

$ cd /
$ find . -name \*.c -atime +30 -exec ls -l {} \;

30일 이전에 억세스된 파일 중 *.c를 찾아 ls -l 한다.

$ cd /
$ find . -name core -exec rm -i {} \;

현재 디렉토리 밑에서 이름이 core인 파일을 찾아 지운다(지우기 전에 정말 지울 지를 물어본다.)<div class='small'>[이 게시물은 관리자님에 의해 2011-10-31 17:32:05 Linux에서 이동 됨]</div>

댓글 작성

댓글을 작성하시려면 로그인이 필요합니다.

로그인하기

댓글 5개

find . -mtime -1 -print | sort
find . -name \*.php -mtime -1 -print | sort
find -name \*.php -mtime -1 | sort
find . -mtime -7 -print -exec cp {} /복사할폴더 \;

찾은 후 복사
find -atime +1 -print -exec ls -al {} \;

게시글 목록

번호 제목
10156
24771
24770
24769
24768
24767
24766
10155
10148
10143
28668
10140
10139
10137
10135
10134
10133
10130
10129
10128
10127
10126
10122
10121
10117
10116
10114
10113
10102
10098
28667
10097
10095
10090
10088
10083
24761
28660
28658
10082
28655
10071
10069
28651
10060
10053
10052
28649
28644
10050
10046
24749
10040
10030
24748
10028
10016
10010
10008
10003
9999
9991
28638
9988
9987
28635
9986
9980
9975
9971
9968
9966
9965
9961
28621
9956
28619
9952
9940
24746
9939
9938
9935
9934
28618
9932
9931
9930
28617
9929
9928
28615
28614
9927
9926
9925
28613
9924
9923
9922