정보공유 목록으로
#지식공유

find 기초: 조건으로 파일 찾기

_리눅스 실습 커리큘럼 4/40 · 터미널에 익숙해지기 (2주차)_

파일을 만들고 옮기는 법 다음은 찾는 법입니다. "퇴사자가 남긴 파일을 전부 찾아 주세요", "설정 파일만 모아 주세요", "1MB 넘는 파일이 어디 있죠?" 세 요청의 답은 전부 `find` 한 줄입니다.

## find 명령어, 왜 필요한가

- 파일을 이름·소유자·크기·시각 조건으로 찾는 일은 관리자가 매일 합니다.
- 옵션 조합만 익히면 백업·정리·감사에 그대로 응용됩니다.
- RHCSA·LPIC-1 이 find 조건 조합을 실기로 확인합니다.

## 이번 편에서 익힐 것

1. 기본형 — `find 시작경로 조건 동작`
2. 조건 — `-name`, `-type`, `-user`, `-size`, `-mtime`
3. 찾은 파일 처리 — `-exec`, 결과 저장 `>`
4. 내용으로 찾기 — `grep`

## find 명령어 핵심 명령어

```bash
find /home -user alice # alice 소유 파일
find /etc -name "*.conf" # 이름 조건
find /var -type f -size +1M # 1MB 초과 일반 파일
find /var/log -type f -mtime +30 # 30일 넘게 수정 안 됨

find /etc -name "*.conf" -exec cp {} /backup/conf/ \; # 찾아서 복사
find /srv -size +1M -type f > /tmp/bigfiles.txt # 목록 저장

grep ich input.txt > result.txt # 내용에 ich 가 있는 줄만 저장
```

- `-size +1M` 의 `+` 는 초과, `-` 는 미만. 부호가 없으면 "정확히"가 되어 결과가 빕니다.
- find 는 파일의 속성을, grep 은 내용을 봅니다.

## find 명령어 자주 하는 실수

- 시작 경로 생략 — 현재 디렉터리에서 찾아 결과가 다릅니다. 지문의 경로를 명시하세요.
- `>>` 와 `>` 혼동 — "덮어쓰기"는 `>`.
- `-exec` 끝의 `\;` 누락 — 명령이 끝나지 않았다는 오류가 납니다.

## find 명령어 실습 문제

- [사용자가 소유한 파일 찾기](/server_cbt?id=4)
- [파일에서 특정 문자열 검색](/server_cbt?id=5)
- [find로 설정 파일 수집하기](/server_cbt?id=138)
- [1MB 초과 파일 목록 만들기](/server_cbt?id=172)

## 다음 편

다음 편은 **디스크 용량 확인과 오래된 파일 정리** 입니다. 화·금요일에 이어집니다.

<!-- publish_key:linux-path-20w-p04-post -->

댓글 0

등록된 댓글이 없습니다.