리자

find - 파일찾기

· 2006-04-03 (월) 21:59:09 · 4750 · 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 {} \;
댓글을 작성하시려면 로그인이 필요합니다.

팁게시판

6,077건

디자인과 관련된 유용한 정보를 공유하세요. 질문은 상단의 QA에서 해주시기 바랍니다.

+
제목 글쓴이 날짜 조회
06-04-13 조회 3,492
06-04-13 조회 3,111
06-04-13 조회 3,402
06-04-12 조회 2,448
06-04-11 조회 2,850
06-04-09 조회 2,352
06-04-08 조회 3,707
06-04-03 조회 4,751
06-03-30 조회 3,770
06-03-29 조회 1,778
06-03-27 조회 2,765
06-03-25 조회 2,396
06-03-24 조회 2,640
06-03-23 조회 4,426
06-03-21 조회 2,597
06-03-17 조회 3,054
06-03-17 조회 3,008
06-03-15 조회 3,679
06-03-15 조회 3,623
06-03-14 조회 1,857
06-03-11 조회 2,225
06-03-06 조회 2,789
06-03-06 조회 2,449
06-03-06 조회 4,310
06-03-06 조회 3,314