리눅스 find 명령어

공정위 광고 문구 Ver 3.1
공정위 광고 문구 Ver 3.2(모바일 전용)

리눅스 find 명령어는 여러가지 다양한 기준으로 파일을 효율적으로 검색할 때 사용할 수 있는 명령어입니다.

특정 파일을 찾거나 특정 문자 패턴에 맞춰서 검색, 특정 확장자의 파일 검색, 특정 소유자, 파일 사이즈, 퍼미션, 등의 다양한 방법을 사용할 수 있습니다.

find 명령어는 파일을 찾는 기본 역할 외에도 찾은 파일에 대한 퍼미션 변경, 소유자 변경, 파일 삭제 등의 추가 작업을 진행할 수 있습니다.

find 명령어

· 파일 및 디렉토리 검색 명령어
· 다양한 조건(이름, 경로, 확장자, 크기, 권한 등)으로 검색 가능
· 와일드카드와 정규표현식 사용 가능
· 특정 사용자 소유의 파일 검색 가능
· 특정 날짜 기준으로 생성/수정된 파일 검색 가능
· 파일 사이즈 기준 검색 가능 (예: 100M 이상)
· 퍼미션 기준 검색 가능 (예: 644, 777 등)
· 검색한 파일에 대해 다음 작업 수행 가능:
→ 삭제 (-delete)
→ 권한 변경 (-exec chmod)
→ 소유자 변경 (-exec chown)
→ 복사 또는 이동
· 자동화 스크립트에서 많이 활용됨

✅ find 명령어 정의

Linux의 find 명령은 계층 구조 내에서 포괄적인 파일 및 디렉터리 검색을 위해 설계 된 동적 유틸리티입니다. 사용자는 이름, 크기, 수정 시간 등을 기준으로 검색할 수 있습니다.

# 기본 사용 옵션 #
find [디렉터리] [-옵션] [표현식]
# 경로 시작 검색
find /path/
# txt. 파일을 경로에서 찾기
find /home/ -type f -name '*.txt'
# txt. 특정 디렉터리 명을 경로에서 찾기
find /home/ -type f -name 'docs'
리눅스 find 명령어(콘솔에서)

✅ 리눅스 find 명령어 옵션

아래 목록은 find 명령 옵션입니다.

✅ find 명령 예시

◻ 자주 사용하는 기본 명령어

# 현재 폴더(이하) 파일 퍼미션을 모두 644로 변경 
find . -type f -exec chmod 644 {} \;   
# 현재 폴더(이하 디렉터리 권한을 755로 변경 
find . -type d -exec chmod 755 {} \;
# 현재 폴더(이하 특정 단어(old)가 포함된 파일을 삭제 
find ./ -type f -name '*.old' -exec rm {} \;  
find ./ -type f -name '*.old' -delete
# 현재 폴더에만 있는 *.old 파일을 찾아서 삭제
find ./ -maxdepth 1 -type f -name '*.old' -exec rm {} \;
# 현재 폴더부터 바로 하위 폴더까지 *.old 파일을 찾아서 삭제\
find ./ -maxdepth 2 -type f -name '*.old' -exec rm {} \;
# 현재 폴더(이하) 디렉토리 갯수 확인 
find ./ -type d | wc -l  

◻ 폴더 지정하여 활용 -maxdepth

-maxdepth 1 옵션의 경우 현재 폴더 내에서만 데이터를 적용하기 때문에 /home/user/public_html/ 폴더에 접속한 상태에서 .txt 확장자 파일을 지운다고 할 경우 아래와 같이 옵션을 사용해서 이하 폴더의 .txt 확장자 파일을 남기고 작업을 할 수 있습니다.

[root@rocky-linux public_html]# pwd
/home/rocky/public_html
find ./ -maxdepth 1 -type f -name '*.txt' -exec rm {} \;

◻ find의 -size 옵션 활용

파일 사이즈에 대한 -size 옵션 활용 방법입니다.

# 5M보다 크고 30M보다 작은 파일 찾기 
find ./ -size +5M -size -30M 
# 512M보다 크고 1024G 보다 작은 파일 찾기 
find ./ -size +512M -size -1024G 
  • c : 바이트
  • k : 키로바이트
  • M : 메가바이트
  • G : 기가바이트
리눅스 기초(The Linux Foundation)

xargs 활용 및 기타 활용

# 현재 디렉토리에서 가장 큰 파일 찾기 
find . -type f | xargs du -s | sort -n | tail -1
# 현재 디렉토리 위치에서 하위디렉토리를 포함하여 string 이란 문자열을 포함한 파일 검색
find . -type f | xargs grep string
# 현재 디렉토리 밑에서 첫글자가 영어 대문자인 모든 파일을 찾을 경우 
find . -name "[A-Z]*'' -print 

grep, du 등의 명령어를 파이프(pipe) 다중 명령어를 사용할 땐 xargs를 같이 사용해 줍니다. xargs의 경우는 find 명령어를 사용하면서 /path 경로에 파일들이 너무 많으면 “Argument list too long”이란 메시지가 나오면서 실행되지 않기 때문에 다른 명령어와 같이 사용할 때 오류 메시지가 나올 때 활용할 수 있습니다.

리눅스 커맨드 라인 인터페이스(Linux command line Interface)

ℹ️ 제휴 안내
본 사이트의 콘텐츠에는 제휴 링크가 포함되어 있습니다. 방문자가 이 링크를 통해 상품 또는 서비스를 구매하면 본 사이트는 판매처로부터 수수료를 지급받습니다. 이 과정에서 구매자가 지불하는 금액(이벤트 할인 시 금액이 내려갑니다↓)은 오르지 않습니다. 게시된 가격·할인·재고 정보는 작성 시점 기준이며 실제와 다를 수 있으므로, 구매 전 판매처에서 최종 확인하시기 바랍니다. 상품 선정과 평가는 자체 기준에 따라 작성되며, 수수료 지급 여부가 소개 순서나 평가 내용에 영향을 주지 않습니다.

Similar Posts

  • [Linux] 리눅스 mv 명령어 사용법 및 mv 명령어 옵션

    리눅스 mv 명령어는 Move의 약자로 파일 또는 디렉토리를 이동하거나 이름을 변경할 때 사용하는 명령어입니다. 기본적인 리눅스 mv 명령어 사용법과 옵션 및 활용 방법에 대해 알아 보겠습니다. ✅ 리눅스 mv 명령어 기본 옵션 mv 명령어의 기본 사용 방법입니다. ✅ mv 명령어 옵션 ✅ mv 명령어 활용하기 1. 여러 파일을 한번에 이동 시키기 2. 명령어로…

  • 리눅스: useradd 명령어 & passwd 명령어

    useradd 명령어는 리눅스에서 사용자의 ID(계정)를 생성하는 명령어입니다. root 권한으로 생성이 가능하며 기본적인 명령은 아래와 같습니다. 리눅스 useradd 명령어 옵션 리눅스 useradd 사용 예 기본으로 사용할 수 있는 예입니다. 리눅스 /etc/skel 디렉토리 계정 생성 시 설정 값이 정의되는 /etc/skel 데릭토리는 사용자를 생성 했을 때 해당 계정의 홈 디렉토리에 기본으로 들어가는 파일이 있습니다. /etc/skel 설정은…

  • SSH 명령어: 옵션 및 사용 방법

    리눅스에서 SSH(Secure Shell)는 네트워크를 통해 다른 시스템에 안전하게 접속할 수 있도록 해주는 프로토콜입니다. SSH는 원격 서버와 클라이언트 간의 통신을 암호화하여 보안성을 높이며, 주로 원격 접속, 파일 전송, 그리고 터널링 기능을 제공합니다. SSH 명령어를 사용하여 사용자는 원격 서버에 안전하게 접속한 뒤 다양한 작업을 수행할 수 있습니다. 터널링 기능: 한 네트워크에서 다른 네트워크로 데이터를 안전하게…

  • 리눅스 who, w 명령어 & user 명령어

    리눅스 who 명령어는 현재 서버에 로그인한 사용자 리스트를 보여주는 명령어입니다. w 명령어는 현재 시스템에 로그인한 사용자와 사용자의 작업 내용을 보여주는 명령어로 각각의 차이가 있습니다. ✅ 리눅스 who 명령어 현재 접속 사용자(USER) 터미널 유형(TTY) 접속 시간 및 IP rocky pts/0, pts/1 .. 2070-02-09 10:15 (xxx.xx.xx8.254) ✅ 리눅스 w 명령어 w 명령어 확인 정보 설명…

  • 리눅스 grep 명령어

    리눅스 grep 명령어는 로그 파일과 같은 텍스트 파일과 아스키 파일에서 원하는 문자열을 찾을 때 사용되며, tail과 find 명령어를 파이프(|)와 결합해서 자주 사용하게 되는 명령어입니다. ✅ grep 명령어 기본 사용법 ✅ 기본적인 사용 예 ✅ grep 옵션 ✅ 다른 명령어와 파이프(|) 조합 활용 다중 명령어인 파이프(|)와 조합해서 사용할 수 있습니다. ✅ grep의 3종류 grep는…

  • 리눅스 심볼릭 링크(Symbolic Link)와 하드 링크(Hard Link)

    리눅스에서 사용하는 심볼릭 링크(Symbolic Link)는 윈도우에서 사용하는 “바로가기”와 같은 기능을 가지고 있습니다. 소프트 링크 or 심링크로도 불리며, 하나의 파일에 여러 이름으로 생성할 수 있습니다. ✅ 심볼릭 링크 하드 링크 명령어 [-s 옵션]은 Symbolic Link를 만들어 주는 옵션이며 [-s 옵션]이 빠지게 되면 Hard Link를 생성하게 됩니다. ✅ 기존 하드 링크의 단점 Hard Link는 기존…

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

Prove your humanity: 5   +   2   =