📌 리눅스 환경에서 이름으로 파일을 찾는 명령어 → 'find'
find
- 리눅스 내부 파일을 찾기위한 명령어입니다.
- find의 인자값으로는 경로를 받습니다.
- 상대 경로, 절대 경로 모두 가능하며 대부분의 리눅스의 경우 이 경로 인자 값을 생략한다면 현재 위치(.)를 입력받은 것으로 간주합니다.
- 유닉스의 경우 이 경로를 입력받지 않으면 명령어 실행이되지 않습니다.
# find [경로] [옵션] [표현식]
# 현재 위치에서 test가 들어가는 파일 모두 찾기
find . -name "*test*"
# 현재 디렉토리에서 test로 시작되는 파일 찾기
find . -name "test*"
# 현재 디렉토리에서 test로 끝나는 파일 찾기
find . -name "*test"
---
# home 경로에서부터 .txt 확장자 모두 찾기
find ~ -name "*.txt"
# root 경로에서부터 .txt 확장자 파일 모두 검색 후 삭제 하기
find / -name "*.txt" -delete
옵션
- P : 심볼릭 링크를 따라가지 않고, 심볼릭 링크 자체 정보 사용.
- L : 심볼릭 링크에 연결된 파일 정보 사용.
- H : 심볼릭 링크를 따라가지 않으나, Command Line Argument를 처리할 땐 예외.
- D : 디버그 메시지 출력.
표현식
find 는 옵션을 거의 사용하지 않고, 표현식을 중첩 사용하여 대상을 줄일 수 있습니다.
- name : 해당 이름의 파일을 찾음. 해당 이름에는 정규 표현식을 활용할 수 있음
- type : 지정된 파일 타입에 해당하는 파일 검색
- user : 해당 유저에게 속한 파일 검색
- empty : 빈 디렉토리 혹은 크기가 0인 파일 검색
- delete : 검색된 파일 혹은 디렉토리 삭제
- exec : 검색된 파일에 대해 지정된 명령 실행
- path : 지정된 문자열 패턴에 해당하는 경로에서 검색.
- print : 검색 결과를 출력. 검색 항목은 newline으로 구분. (기본 값)
- print0 : 검색 결과를 출력. 검색 항목은 null로 구분.
- size : 파일 크기를 사용하여 파일 검색.
- mindepth : 검색을 시작할 하위 디렉토리 최소 깊이 지정.
- maxdepth : 검색할 하위 디렉토리의 최대 깊이 지정.
- atime : n일 이내에 액세스된 파일을 찾음.
- ctime : n일 이내에 만들어진 파일을 찾음.
- mtime : n일 이내에 수정된 파일을 찾음.
- cnewer file : 해당 파일보다 최근에 수정된 파일을 찾음.
# 현재 디렉토리에서 모든 디렉토리 찾기
find . -type d
# 현재 디렉토리에서 test가 들어가는 디렉토리 찾기
find . -name "*test*" -type d
# 현재 디렉토리에서 모든 파일 찾기
find . -type f
✨ type 옵션
- d : 디렉토리
- f : 일반적인 파일
- l : 심볼릭 링크
✨ grep 을 사용하여 검색한 파일에서 다시 해당 키워드를 추릴 수 도 있습니다.
find / -name "*jdk*" | grep 11
'운영체제 > Linux' 카테고리의 다른 글
[Linux] top - 리눅스 CPU 사용량 보기 (0) | 2023.08.31 |
---|---|
[Linux] df - 디스크 사용량 모니터링 하기 (0) | 2023.08.28 |
[Linux] free - 메모리 사용량 확인하기 (0) | 2023.08.24 |
[Linux] dmesg - 리눅스 커널 로그 메세지 확인하기 (OOME, SYN Flooding) (0) | 2023.08.23 |
[Linux] uptime - 서버가 받고있는 부하 평균 측정 및 대응하기 (0) | 2023.08.22 |