리눅스2009. 6. 16. 11:39
 





---------------------------------------
find [경로] -name [파일] -print
---------------------------------------

-----------------------------------------------------------------
옵션 기능
-----------------------------------------------------------------
- atime N n일 전에 액세스(access)된 파일을 찾습니다.
- mtime N n일 전에 수정(modify)된 파일을 찾습니다.
- newer USR file보다 늦게 수정된 파일을 찾습니다.
- size n n*512 바이트 길이를 가지는 파일을 찾습니다.
- name WORD 파일 이름으로 검색합니다. 이름에는 메타 문자(*, ?, [])를
  사용할 수 있습니다.
- perm MODE 퍼미션으로 검색합니다. (-perm +2000)
- type LETTER 파일형식으로 검색합니다. f는 보통 파일, d는 디렉토리
  파일을 의미합니다.
- user USR 사용자 이름이 usr인 파일을 찾습니다.
- nouser 파일 소유자 이름이 등록되어 있지 않은 파일을 찾습니다.
- nogrp 파일 소유 그룹 이름이 등록되어 있지 않은 파일을 찾습니다.
- exec CMD 명령(CMD)을 실행합니다. 명령행의 끝은 반드시 \; 로
  닫아 주어야 합니다. 현재 찾은 파일이름의 배열을 {}로 입력으로 사용할 수 있습니다.
  아래 명령은 확장자가 bak인 모든 파일을 찾아 삭제합니다.
   find ./ -name '*.bak' -exec rm -f {} \;
- ok CMD 명령을 실행하기 전에 사용자 입력을 기다립니다.
- print 표준출력(stdout)으로 출력합니다. 기본설정입니다.
- ptint0 -print와 같이 동작하지만 출력의 끝에 개행문자를 붙이지 않습니다.
- fprint FILE -print와 같이 동작하면서 출력을 지정한 파일로 보냅니다.
- printf FORM c 스타일의 포맷을 사용하여 출력합니다.
   man 3 printf
- ls ls -dils 형식으로 파일 정보를 자세히 출력합니다.
- fls -ls 와 같이 동작하면서 출력을 지정한 파일로 보냅니다.

-----------------------------------------------------------------
약간의 설명을 붙이자면 경로는 절대경로와 상대경로모두 사용할 수 있다.
그럼 아래 설명을 보자

* 현재 디렉토리에서 특정파일찾기
find . -name rsync -print
현재 디렉토리에서 rsync파일이름을 출력하라!.만약 없다면 아무것도 출력하지 않는다.
위에서 "."이 부분을 잘보자

* 홈 디렉토리 안에있는 파일찾기
find ~/ -name README -print
현재 자신의 홈 디렉토리와 그 하위모든디렉토리를 대상으로 README파일을 찾아서
그 결과를 보여준다.

* 현재 디렉토리에서 여러파일 찾기
find . -name '*.conf' -print
현재 디렉토리에서 .conf로 끝나는 파일을 파일을 찾아준다.

* 디렉토리 찾기
find /usr/local -name gnu -type d -print
/usr/local 디렉토리를 기준으로 그 하위 디렉토리인 gnu디렉토리를 찾는다

'리눅스' 카테고리의 다른 글

snmp arm cross compile  (0) 2009.08.24
vmware 리눅스 시리얼통신 minicom 사용  (0) 2009.07.20
openssl mips, arm 포팅  (0) 2009.06.03
kernel 컴파일 후~  (0) 2009.05.27
dhcp설치  (0) 2009.05.07
Posted by 불량껌