Linux ETC

find 명령어-1

2012.03.30 03:21

호스트웨이 조회 수:14935

 find 명령어-1

 

1. 기능

 지정된 경로로 주어진 조건에 따라 파일을 찾고 그 경로를 보여주는 명령으로
 파일의 조건을 이름이나 크기, 날짜 등 다양하게 지정할 수 있습니다.


2. 사용법
 find 명령의 일반적인 형식

  find <대상경로> <옵션> <검색 조건> <처리방법>

 

3. 검색옵션

 -name filename  :  파일 이름을 찾음
  -atime +n access  :  시간이 n일 이전인 파일을 찾음
  -atime -n access  :  시간이 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 이름으로 찾음
 -type filetype : 찾고자 하는 파일이나 디렉토리의 유형을 지정 해줄때 사용함
 
 타입의 종류
 1) -type b : 블록 특수 파일(block device)
 2) -type c : 캐릭터 특수 파일 (character deice)
 3) -type d : 디렉토리(directory)
 4) -type f : 일반파일(file) 
 5) -type l : 심볼릭 링크(link)
 6) -type p : 파이프 (pipe)
 7) -type s : 소켓 (socket)


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


5. 사용예

자신의 홈 디렉토리에서 확장자가 '.txt'인 파일을 찾는 예
$ find   -name "*.txt'' -print

현재 디렉토리 밑에서 test 이라는 이름을 가진 사용자 소유의 파일을 찾는 예
$ find . -user test -print

자신의 홈 디렉토리에서 최근 3일 동안 변경된 파일들을 찾는 예
$ find . -mtime -3 -print

현재 폴더에서 최근 5일 동안 변경되지 않은 파일들을 찾아서 삭제하는 경우
$ find . -mtime +5 -print -ok rm {} ;

현재 폴더에서 피션이 777인 파일을 찾아 리스트로 보여주는 예
$ find . -type f -perm 777 -exec ls -l {} ;

현재 디렉토리에서 가장 큰 파일을 찾기
$ find  .  -type  f  | xargs  du  -s  | sort  -n  |  tail  -1

현재 디렉토리에서 확장자가 txt 이고 host 이란 문자열이 포함된 파일 검색
$ find / -name "*.txt" -print -exec grep host {}

txt 문서를 찾아서 그 문서들을 tar로 묶기
$ find . -name "*.txt" | xargs tar cvf txt.tar

번호 제목 글쓴이 날짜 조회 수
306 우분투 기본 쉘 dash 에서 bash로 변경하기 호스트웨이 2015.09.07 10817
305 패스워드 정책 변경 호스트웨이 2015.09.03 3722
304 명령어 dstat 사용하기 호스트웨이 2015.09.01 4370
303 ulimit 설정 관련 호스트웨이 2015.07.29 77634
302 2015년 7월1일 윤초 발생 관련 점검 방안 file 호스트웨이 2015.06.30 1558
301 Sysbench를 통한 System, MySQL 성능 테스트 file 호스트웨이 2015.06.26 9870
300 ngrinder를 이용한 부하 테스트 - 1) Controller 설치 file 호스트웨이 2015.04.08 4285
299 epel-release 설치하기 file 호스트웨이 2014.12.22 14289
298 SVN(subversion) 설치 및 셋팅 file 호스트웨이 2014.12.02 6423
297 리눅스 커널 업데이트 및 커널 변경 부팅 방법 file 호스트웨이 2014.10.30 23410
296 samba 설치 file 호스트웨이 2014.04.14 3363
295 partprobe - 리부팅 없이 사용 중인 파티션 재인식 호스트웨이 2012.12.28 8322
294 오늘 생성한 파일만 조회하기 호스트웨이 2012.12.27 6236
293 sftp 서비스 막기 호스트웨이 2012.12.27 1319
292 리눅스 uniq 명령어 file 호스트웨이 2012.12.27 7877
291 ls -l 출력 시 날짜형태 변경 호스트웨이 2012.12.27 6139
290 리눅스 free 명령어 호스트웨이 2012.12.26 1817
289 리눅스 캐시 메모리 비우기 file 호스트웨이 2012.12.26 5269
288 [ERROR] ftp error 500 OOPS: cannot change directory:/home/ 호스트웨이 2012.12.21 4285
287 free -m 에서 free (남는 메모리 양) 최소량 제한하기 호스트웨이 2012.12.21 2147