리눅스 find: Difference between revisions
From CS Wiki
No edit summary |
(→주요 옵션) |
||
(4 intermediate revisions by 4 users not shown) | |||
Line 6: | Line 6: | ||
</pre> | </pre> | ||
== 주요 옵션 | == 주요 옵션 == | ||
* name | * name [파일명] : 지정된 이름의 파일을 찾는다. | ||
* user | * user [유저명] : user 소유의 파일을 찾는다. | ||
* -type [bcdfls] : 지정된 형식의 파일을 찾는다. | * -type [bcdfls] : 지정된 형식의 파일을 찾는다. | ||
** b : 블록파일 | ** b : 블록파일 | ||
Line 17: | Line 17: | ||
** s : 소켓 | ** s : 소켓 | ||
* -size [+/-] | * -size [+/-]숫자[bckw] : 지정된 크기의 파일을 찾는다. | ||
** +n : n보다 크다 | ** +n : n보다 크다 | ||
** -n : n보다 작다 | ** -n : n보다 작다 | ||
Line 25: | Line 25: | ||
** k : kilobytes | ** k : kilobytes | ||
** w : 2-byte | ** w : 2-byte | ||
* -mtime [+/-]숫자 | |||
** +n : n일 '''전에''' 수정된 파일을 찾는다. | |||
** -n : n일 '''동안''' 수정된 파일을 찾는다. | |||
* -ctime [+/-]숫자 | |||
** 생성 시간을 기준으로 찾는다. 사용법 mtime과 동일 | |||
* -atime [+/-]숫자 | |||
** 엑세스 시간을 기준으로 찾는다. 사용법 mtime과 동일 | |||
* -inum number : 지정한 아이노드 번호와 파일을 찾는다. | * -inum number : 지정한 아이노드 번호와 파일을 찾는다. | ||
Line 34: | Line 44: | ||
* 최근 10일동안 변경된 파일을 찾아서 /tmp/find.out 에 저장한다. | * 최근 10일동안 변경된 파일을 찾아서 /tmp/find.out 에 저장한다. | ||
<pre class='shell'> | <pre class='shell'> | ||
$ find / -mtime -10 -print > /tmp/find.out | |||
</pre> | </pre> | ||
Line 40: | Line 50: | ||
** 전체 디렉터리에서 정규 파일 중 Set-UID가 설정된 파일을 찾는다. | ** 전체 디렉터리에서 정규 파일 중 Set-UID가 설정된 파일을 찾는다. | ||
<pre class='shell'> | <pre class='shell'> | ||
$ find / -type f -perm -4000 | |||
</pre> | </pre> | ||
:* -perm 4000 으로 하면 Set-UID만 설정된 파일을 검색하고 | :* -perm 4000 으로 하면 Set-UID만 설정된 파일을 검색하고 | ||
Line 46: | Line 56: | ||
:* Set-GID는 2000, Sticky-bit는 1000 이다. | :* Set-GID는 2000, Sticky-bit는 1000 이다. | ||
:* [[리눅스 특수권한]] 참고 | :* [[리눅스 특수권한]] 참고 | ||
* 파일 내용에 문자열이 포함된 파일 찾기 | |||
** 하위 폴더도 한번에 검색한다. | |||
<pre class='shell'> | |||
$ find [검색 대상 폴더] -type f -print | xargs grep "[검색 문자열]" | |||
</pre> | |||
* [[리눅스 ls]]로도 동일한 기능을 구현할 수 있다. | |||
[[분류:리눅스]] | |||
[[분류:리눅스 명령어]] |
Latest revision as of 02:01, 10 November 2022
리눅스에서 특정 파일 및 폴더를 찾기 위한 명령어
사용법[edit | edit source]
find [경로] [옵션] [대상]
주요 옵션[edit | edit source]
- name [파일명] : 지정된 이름의 파일을 찾는다.
- user [유저명] : user 소유의 파일을 찾는다.
- -type [bcdfls] : 지정된 형식의 파일을 찾는다.
- b : 블록파일
- c : 문자
- d : 디렉터리
- f : 파일
- l : 링크파일
- s : 소켓
- -size [+/-]숫자[bckw] : 지정된 크기의 파일을 찾는다.
- +n : n보다 크다
- -n : n보다 작다
- n : n이다
- b : 512-byte
- c : byte
- k : kilobytes
- w : 2-byte
- -mtime [+/-]숫자
- +n : n일 전에 수정된 파일을 찾는다.
- -n : n일 동안 수정된 파일을 찾는다.
- -ctime [+/-]숫자
- 생성 시간을 기준으로 찾는다. 사용법 mtime과 동일
- -atime [+/-]숫자
- 엑세스 시간을 기준으로 찾는다. 사용법 mtime과 동일
- -inum number : 지정한 아이노드 번호와 파일을 찾는다.
- -print : 표준출력으로 검색된 파일명을 출력한다.
- -exec command { } \; : 찾은 각 파일에 대해 지정된 명령을 실행한다.
- -ok command { } \; : 실행 여부를 사용자에게 확인한 후 명령을 실행한다.
사용 예제[edit | edit source]
- 최근 10일동안 변경된 파일을 찾아서 /tmp/find.out 에 저장한다.
$ find / -mtime -10 -print > /tmp/find.out
- 특수권한 파일 찾기
- 전체 디렉터리에서 정규 파일 중 Set-UID가 설정된 파일을 찾는다.
$ find / -type f -perm -4000
- -perm 4000 으로 하면 Set-UID만 설정된 파일을 검색하고
- -perm -4000 으로 하면 Set-UID가 포함된 파일을 검색한다.
- Set-GID는 2000, Sticky-bit는 1000 이다.
- 리눅스 특수권한 참고
- 파일 내용에 문자열이 포함된 파일 찾기
- 하위 폴더도 한번에 검색한다.
$ find [검색 대상 폴더] -type f -print | xargs grep "[검색 문자열]"
- 리눅스 ls로도 동일한 기능을 구현할 수 있다.