사이트 내 전체검색
[linux] Find 명령
로빈아빠
https://cmd.kr/server/393 URL이 복사되었습니다.

본문

Find 명령

리눅스 쉘상에서 특정파일이나 디렉토리를 찾는것을 알아보자!
의외로 간단하다.
공통된 문법(?)의 시작은
---------------------------------------
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디렉토리를 찾는다.

댓글목록

등록된 댓글이 없습니다.

1,139 (11/23P)

Search

Copyright © Cmd 명령어 18.119.133.138