상세 컨텐츠

본문 제목

1. 필수 툴 이해 및 사용 - find 정리

엔지니어일기/RHCSA준비

by jaws99 2022. 5. 9. 20:08

본문

반응형

타입으로 파일 찾기

# 타입이 파일인 경우
find <경로> -type f

# 타입이 디렉토리인 경우
find <경로> -type d

 

이름으로 파일 찾기

# .txt로 끝나는 파일 찾기
find <경로> -name "*.txt"

# 대소문자를 구분하지 않고 파일 찾기
find ./ -iname "*.txt"
./test.tXt
./text.txt

 

용량으로 파일 찾기

# 20MiB 이상의 파일 찾기
find <경로> -size +20M

# 20MiB의 파일 찾기
find <경로> -size 20M

# 20MiB 보다 작은 파일 찾기
find <경로> -size -20M

 

유저 / 그룹 이름으로 파일 찾기

# user 이름으로 찾기
find <경로> -user root

# group 이름으로 찾기
find <경로> -group wheel

 

권한으로 파일 찾기

# user한테 실행권한이 있는 파일
find <경로> -perm u=x

# 퍼미션이 770인 파일 (u=rwx, g=rwx, o=)
find <경로> -perm 770

# 퍼미션이 770을 포함하는 파일 (771, 772는 770을 포함)
find <경로> -perm -770

# 퍼미션이 770의 일부라도 갖는 파일 (user의 r,w,x중 하나, group r,w,x 하나라도 설정된다면 포함)
find <경로> -perm /770

 

검색한 파일을 대상으로 명령어 실행.

# 검색 결과를 한 줄씩 여러 명령어로 실행
find ./ -name "t*" -exec echo {} \;
./t1
./t2

# 검색 결과를 뒤로 이어서 한 명령어로 실행
find ./ -name "t*" -exec echo {} +;
./t1 ./t2

 

시험 준비

# (대소문자를 구분하지 않는) txt로 끝나는 모든 파일들을 /home에서 찾아 /root/dir로 복사
find /home -type f -iname "*.txt" -exec cp {} /root/dir \;

# 용량이 20k보다 작은 모든 파일을 /etc에서 찾아 dir로 복사
find /etc -type f -size -20k -exec cp {} ./dir \;

# 용량이 1k 이상 10k 이하, 사용자가 root, user에게 read권한, p로 시작하는 파일을  /usr에서 찾아 결과를 result로 저장
$ find /usr -type f -name "p*" -size +1k -size -10k -user root -perm -700 > result
$ cat result
..........
/usr/bin/piconv
/usr/bin/purge-old-kernels
/usr/bin/ptar
/usr/bin/pl2pm
/usr/bin/py3clean
/usr/bin/pbput
/usr/bin/pod2html
/usr/bin/ptargrep
/usr/sbin/pam_getenv
/usr/sbin/popularity-contest

# 용량이 8k 이상 10k 이하, 사용자가 root, user에게 read권한이 있는 파일을 /usr에서 찾아 /root/jin 디렉토리에 저장
$ find /usr -type f -size +8k -size -10k -user root -perm -700 -exec cp -a {} /root/jin/ \;
$ ls -al
total 536
drwxr-xr-x 2 root root 4096 May  9 11:02 .
drwx------ 6 root root 4096 May  9 11:05 ..
-rwxr-xr-x 1 root root 8839 May 19  2020 aa-status
-rwxr-xr-x 1 root root 8363 Feb 17  2020 byobu
-rwxr-xr-x 1 root root 8273 Mar 11 16:38 calendar_add
-rwxr-xr-x 1 root root 9120 Apr 13 08:40 cat
-rwxr-xr-x 1 root root 8816 Apr 13 08:40 chroot
-rwxr-xr-x 1 root root 8723 Sep 16  2020 cryptroot
-rwxr-xr-x 1 root root 8792 Apr 13 08:40 dmesg
..........
반응형

관련글 더보기