해킹/해킹기초

리눅스 find 명령어 완벽 정리! 초보부터 실무까지

리치라이프 연구소 2025. 2. 6. 23:41
반응형

🐧 리눅스 find 명령어 완벽 정리! 초보부터 실무까지 📂

리눅스에서 파일을 찾는 가장 강력한 명령어 find!
사용법부터 실전 예제까지 한 번에 정리해드립니다.


✅ find 명령어란?

리눅스에서 파일 및 디렉터리를 검색하는 강력한 명령어입니다.
다양한 옵션과 조합을 사용해 파일 이름, 크기, 생성 날짜, 권한 등으로 세밀하게 검색할 수 있습니다.

🔹 기본 사용법

bash
복사편집
find [검색할 디렉터리] [옵션] [조건]

예제: 현재 디렉터리에서 모든 파일 찾기

bash
복사편집
find .

. (점)은 현재 디렉터리를 의미합니다.


🏆 find 명령어 핵심 옵션 10가지

📌 1. 특정 파일 이름으로 찾기

bash
복사편집
find /path/to/search -name "파일명"

예제: test.txt 찾기

bash
복사편집
find /home/user -name "test.txt"

대소문자 무시: -iname 옵션 사용

bash
복사편집
find /home/user -iname "test.txt"

📌 2. 특정 확장자 파일 찾기

bash
복사편집
find /path -name "*.확장자"

예제: .log 파일 찾기

bash
복사편집
find /var/log -name "*.log"

📌 3. 특정 크기 이상의 파일 찾기

bash
복사편집
find /path -size +크기단위

예제: 100MB 이상의 파일 찾기

bash
복사편집
find / -size +100M

크기 단위:

  • k = KB
  • M = MB
  • G = GB

📌 4. 특정 날짜 이후/이전 파일 찾기

bash
복사편집
find /path -mtime -N # N일 이내 수정된 파일 find /path -mtime +N # N일 이전에 수정된 파일

예제: 최근 7일 내 변경된 파일 찾기

bash
복사편집
find /home -mtime -7

📌 5. 특정 사용자 또는 그룹이 소유한 파일 찾기

bash
복사편집
find /path -user 사용자이름

예제: root 사용자가 소유한 파일 찾기

bash
복사편집
find /etc -user root

📌 6. 특정 권한을 가진 파일 찾기

bash
복사편집
find /path -perm 권한

예제: 777 권한을 가진 파일 찾기

bash
복사편집
find /var/www -perm 777

권한이 777 이상 포함된 파일 찾기:

bash
복사편집
find /var/www -perm -777

📌 7. 특정 디렉터리만 찾기

bash
복사편집
find /path -type d

예제: /home 내 모든 디렉터리 찾기

bash
복사편집
find /home -type d

📌 8. 특정 파일만 찾기

bash
복사편집
find /path -type f

예제: /home 내 모든 파일 찾기

bash
복사편집
find /home -type f

📌 9. 검색한 파일 삭제하기

주의: 삭제 명령어 실행 시 신중해야 합니다!

bash
복사편집
find /path -name "*.log" -delete

예제: /var/log에서 모든 .log 파일 삭제

bash
복사편집
find /var/log -name "*.log" -delete

🔥 -delete 옵션 사용 시 복구 불가!

📌 10. 검색한 파일을 exec로 처리

find로 찾은 파일을 다른 명령어와 함께 사용 가능

bash
복사편집
find /path -name "*.log" -exec rm -f {} \;

예제: 100MB 이상 파일을 자동으로 삭제

bash
복사편집
find / -size +100M -exec rm -f {} \;

{} → find가 찾은 파일을 의미
\; → 명령어 끝 표시


🚀 find 명령어 실무 활용법

✔️ 특정 확장자 파일을 압축하기

bash
복사편집
find /home -name "*.txt" -exec tar -czvf backup.tar.gz {} +

모든 .txt 파일을 backup.tar.gz로 압축

✔️ 특정 크기 이상의 파일 목록을 저장

bash
복사편집
find / -size +500M > large_files.txt

500MB 이상 파일 리스트를 large_files.txt에 저장

✔️ 7일 이상 된 로그 파일만 삭제

bash
복사편집
find /var/log -name "*.log" -mtime +7 -delete

최근 7일 내 생성된 로그는 유지하고 오래된 파일만 삭제


🎯 find vs locate 차이점

명령어특징

find 실시간 검색 (느림, 정확함)
locate 인덱스 기반 검색 (빠름, 최신 데이터 반영 안 됨)

🔍 locate 사용법

bash
복사편집
locate myfile.txt

최신 데이터 반영하려면?

bash
복사편집
updatedb

🏅 결론

✅ find는 파일 검색의 최강자!
✅ 옵션을 활용하면 날짜, 크기, 권한별 검색 가능
✅ exec와 조합하면 자동 삭제, 압축, 백업까지 가능


💡 도움이 되셨다면 공감(❤️) & 댓글 부탁드립니다!
📢 더 많은 리눅스 명령어 정리는 다음 포스팅에서! 🚀


#리눅스 #find명령어 #리눅스파일검색 #리눅스명령어 #리눅스사용법  
#서버관리 #리눅스파일찾기 #find옵션 #find사용법 #리눅스초보  
#find예제 #리눅스기초 #리눅스고급 #리눅스서버 #리눅스파일관리  
#리눅스명령어정리 #서버운영 #리눅스관리자 #IT기초 #프로그래밍  

반응형