Linux 명령어: find
find
- 이름, 사이즈, 소유자, 날짜 와 같은 특정 조건을 가진 파일 또는 디렉토리를 찾는 명령
- -exec 옵션으로 찾아낸 파일에 대해 특정 명령을 실행 가능
검색 옵션
옵션의 종류 | 내용 |
---|---|
-name | 원하는 이름의 파일을 찾아주며, 와일드카드(*,?,[])를 사용 가능 |
-type | 찾고자 하는 것이 파일(f)인지, 디렉터리(d)인지, 링크(i)인지 등을 정한다 |
-user | 지정한 사용자가 소유한 파일을 찾는다. |
-size | 크기가 n인 파일을 찾는다. (-n, n, +n) |
-newer | 지정한 파일보다 나중에 생성된 파일을 찾아준다. |
-empty | 비어있는 파일을 찾는다. |
동작 옵션
옵션의 종류 | 내용 |
---|---|
-exec | 찾아낸 파일을 인수로 지정한 명령을 수행한다 |
찾아낸 파일의 전체 경로를 표시해 보여준다. 이 옵션은 find 명령 기본옵션 | |
-ok | -exec 옵션과 동일하나, 명령 수행 이전에 사용자에게 수행 여부를 확인한다 |
예시 #1
### ex)
### 파일을 찾는데, 이름은 '*.log'
### 찾아서 grep 으로 2021-12-25 찾는 것을 실행하는데
### 인자는 앞에 찾은 파일들 경로가 {} 에 들어가고
### 결과는 현재 경로의 tmp.txt 에 저장한다.
find / -type f -name '*.log' -exec grep 2021-12-25 > tmp.txt {} \;
예시 #2
# httpd.conf 라는 이름의
# 타입이 파일인 것을 찾는데,
# 허가 거부 등의 아닌 결과는 버린다.
find / -type f -name 'httpd.conf' 2>/dev/null
예시 #3
# / 부터 전체를 탐색하는데
# server.xml 의 이름 파일을 찾아서
# 해당 파일에 8080 문자열이 있는지 확인하고
# 해당 파일의 이름을 출력한다.
# 이 때, 불필요 로그는 버린다.
find / -type f -name 'server.xml' -exec grep -l 8080 2>/dev/null {} \;
'Programming' 카테고리의 다른 글
규칙9. equals를 재정의할 때는 반드시 hashCode도 재정의하라 / Effective Java 2/E, 이펙티브 자바 (0) | 2021.12.28 |
---|---|
Effective Java 2/E, 이펙티브 자바 책 핵심요약 (0) | 2021.12.28 |
프로세스의 메모리 주소 공간 (Memory address space of Process) (0) | 2021.12.19 |
Spring Security 5 OAuth 정리 (클라에서 서버까지) (0) | 2021.12.17 |
Oracle to MySQL 변환 시 고려사항 (RDBMS) (0) | 2021.12.15 |