본문 바로가기
▶ 운영체제 [OS]/▷ 우분투 [Ubuntu]

[리눅스 우분투] 파일 검색하기 (find)

by (๑′ᴗ‵๑) 2022. 6. 8.
반응형

 

 

 

안녕하세요,

 

오늘은 리눅스에서 파일 또는 디렉터리 검색 방법에 대해 포스팅 해보도록 하겠습니다.

 

 

find 사용법

 

원하는 파일 또는 디렉터리를 검색하기 위해 사용하는 명령어는 find입니다. 하지만 옵션 사용 없이 find만 사용할 경우 같은 이름을 가진 많은 파일 또는 디렉터리를 검색할 수 있으므로, 정확한 검색을 위해선 옵션과 함께 사용해주는 것이 좋습니다. 

find 검색경로 [옵션] 검색대상 [동작]

(검색경로 생략 시 현재 경로를 기준으로 검색)

 

[옵션]

-maxdepth 숫자 지정한 경로로부터 하위 몇 단계의 디렉터리까지 검색할지 지정
-name 검색할 파일/디렉터리 이름 지정
-size +, -기호를 이용해 검색할 파일의 크기를 기정하며, 지정한 크기보다 큰 또는 작은 파일을 검색
(c: Byte, w: Word, b: Block, k: KByte) 
-type 검색할 파일의 형식 지정
(b: Character device, d: Directory, f: File, l: Symbolic link, s: Socket)
-user 검색할 파일의 소유자 지정
-group 검색할 파일의 그룹명 지정

 

[동작]

-exec 명령어 검색 결과에 대해 수행할 명령 지정
(명령어 다음에 반드시 {} \;를 작성해주어야 한다.)
-print 디폴트 동작으로 검색한 결과 출력
-fprint 파일명 검색한 결과를 지정한 파일로 저장
(파일이 존재할 경우 검색 결과로 덮어써진다.)

 

반응형

 

사용 예시

 

/* 현재 경로에서 사이즈가 50bytes 보다 작은 파일 검색 */
find ./ -size -50c

/* 현재 경로에서 이름이 test인 파일 또는 디렉터리 검색 */
find ./ -name test

/* root 경로에서 이름이 test인 파일 또는 디렉터리 검색 */
find / -name test

/* root 경로에서 하위 3단계의 디렉터리까지만 이름이 test인 파일 또는 디렉터리 검색 */
find / -maxdepth 3 -name test 

/* root 경로에서 디렉터리 검색 */
find / -type d

/* 현재 경로에서 모든 text 파일 검색 후 결과를  result에 저장 */
find -name *.txt -fprint result

/* 이름이  a.txt인 파일 검색 후 해당 파일 삭제 */
find -name a.txt -exec rm {} \;

 

감사합니다.

 

반응형

댓글