게으름을 위한 부지런한 게으름뱅리' 블로그

[Linux] Find 명령어 총정리 본문

IT/Linux

[Linux] Find 명령어 총정리

LazismLee 2024. 7. 7. 00:34
반응형

♪ 이름으로 찾기

find /path/to/directory -name example.txt		#특정 디렉토리에서 이름이 example.txt인 파일 찾기

find /path/to/dir -type f -name "*.txt" -exec grep "keyword" {} +	#특정 확장자를 가진 파일을 특정 디렉토리 및 그 하위 디렉토리에서 찾기

find /path/to/dir -type f -iname "*pattern*"	#파일 이름에 대소문자 구분 없이 특정 패턴을 포함하는 경우 찾기

find /path/to/directory -name "*abc*"	#특정 패턴을 포함하는 파일 찾기 (예: abc를 포함하는 파일)

find /path/to/dir -type f -name "*.jpg"	#특정 확장자를 가진 파일을 모두 찾기

find /path/to/dir -name "pattern*"	#파일이나 디렉토리의 이름이 특정 패턴과 일치하는 경우 찾기

find /path/to/dir -type f -name "file.txt" -exec ls -l {} \;	#특정 파일을 검색하되 하위 디렉토리까지 포함하여 검색하기

♪ 유형으로 찾기

find /path/to/directory -type d	#특정 유형의 파일 찾기 (예: 디렉토리)

find /path/to/dir -type l	#심볼릭 링크인 파일만 찾기

find /path/to/dir -type f -not -lname '*'	#심볼릭 링크가 아닌 파일만 검색

find /path/to/dir -type d	#디렉토리만 찾기

find /path/to/dir -type f ! -type l	#일반 파일만 찾기 (심볼릭 링크 제외)

find /path/to/dir -type f -executable	#실행 가능한 파일만 찾기

♪ 크기로 찾기

find /path/to/directory -size +1M	#특정 크기 이상의 파일 찾기 (예: 1MB 이상)

find /path/to/dir -type f -size -1M	#특정 크기보다 작은 파일만 찾기

find /path/to/dir -type f -size 100k	#특정 크기와 정확히 일치하는 파일만 찾기 (예: 100KB)

find /path/to/dir -type f -size +1M -size -10M	#특정 범위의 파일 크기 사이에 있는 파일 찾기 (예: 1MB에서 10MB 사이)

find /path/to/dir -type f -empty	#빈 파일 (크기가 0인 파일) 찾기

find /path/to/dir -type f -size +1M -exec ls -l {} \; | head -n 10	#파일 크기를 기준으로 최대 10개 파일만 찾기

♪ 기간으로 찾기

find /path/to/dir -type f -newermt "2023-01-01"	#특정 시간 이후에 수정된 파일 찾기

find /path/to/dir -type f -not -newermt "2023-01-01"	#특정 시간 이전에 수정된 파일 찾기

find /path/to/dir -type f -newermt "2023-01-01" ! -newermt "2024-01-01"	#특정 시간 사이에 수정된 파일 찾기

find /path/to/dir -type f -anewermt "2023-01-01"	#특정 시간 이후에 액세스된 파일 찾기

find /path/to/dir -type f -not -anewermt "2023-01-01"	#특정 시간 이전에 액세스된 파일 찾기

find /path/to/directory -mtime -7	#최근 N일 사이에 수정된 파일 찾기 (예: 최근 7일 내)

find /path/to/dir -type f -newer /path/to/reference_file	#특정 파일보다 더 최근에 수정된 파일들을 찾기

find /path/to/dir -atime +30	#파일의 마지막 접근 시간이 특정 시간 이전인 파일 찾기

find /path/to/dir -newermt "2023-01-01" ! -newermt "2024-01-01"	#파일의 마지막 수정 시간이 특정 시간 범위 내에 있는 경우 검색

♪ 권한으로 찾기

find /path/to/directory -user username	#특정 사용자의 파일 찾기

find /path/to/directory -perm /u=r	#특정 권한을 가진 파일 찾기 (예: 읽기 권한이 있는 파일)

find /path/to/dir \( -user username -o -group groupname \)	#파일의 소유자나 그룹이 특정 사용자인 경우 찾기

find /path/to/dir -perm 777	#파일의 권한이 777인 파일 검색

 

♪ 파일 검색 후 동작하기

find /path/to/dir -name "file.txt" -exec chmod 644 {} \;	#특정 파일의 권한을 변경하기

find /path/to/dir -name "*.tmp" -exec rm {} \;	#파일을 특정 액션을 통해 처리하기

find /path/to/source -name "*.jpg" -exec cp {} /path/to/destination \;	#파일을 특정 디렉토리로 복사하기

find /path/to/dir -type f -name "*.log" -exec gzip {} \;	#파일을 찾은 후, 다른 명령을 실행하기 (예: 압축)
반응형
Comments