1. UID 로 된 uid 를 다른 계정명과 그룹명으로 변경
find /home -uid UID -exec chown 계정명:그룹명 {} \;
ex) find /home/apple -uid 500 -exec chown apple:users {} \;
예제 해설) /home/apple 하위 경로에 있는 모든 파일 및 디렉토리에 대해서 uid 가 500 인 것을
uid : apple 과 gid : users 로 변경해라
2. 현재 경로의 모든 파일에 대해 내용검색을 하여 keyword 라는 패턴을 new_keyword로 치환
find ./ -exec perl -pi -e 's/keyword/new_keyword/g' {} \;
ex) find ./*.php -exec perl -pi -e 's/abc.com/abc.kr/g' {} \;
예제 해설) 현재 경로 (하위 포함) 의 모든 php 파일에 포함된 abc.com 이라는 패턴을 abc.kr 로 치환해라
3. 현재 경로에서만 소유자가 nobody인 php파일을 모두 삭제
find ./ -maxdepth 1 -user nobody -name "*.php" -exec rm {} \;
4. 특정날짜 기준으로 파일 찾기
4-1 특정 날짜 이후 생성된 파일 찾기
find ./ -type f -newerct yyyy-mm-dd
4-2 특정 날짜 이전에 생성된 파일 찾기
find ./ -type f !-newerct yyyy-mm-dd
위 두 명령어를 조합하여 일정 기간내에 생성된 파일을 찾을 수 있다.
ex) find ./ -type f -newerct 2020-01-01 ! -newerct 2020-01-31
(2020년 1월 1일 부터 1월 31일 이내에 생성된 파일을 출력)
응용) find ./ -type f -newerct 2020-01-01 ! -newerct 2020-01-31 -exec rm -rf {} \;
(2020년 1월 1일 부터 1월 31일 이내에 생성된 파일 삭제)
5. 수정된 날짜/시간 기준으로 찾기
find ./ -type f -mtime +30 (30일 지난 파일)
find ./ -type f -mtime 30 (30일째 되는 파일)
find ./ -type f -mtime -30 (30일이 안되는 파일)
find ./ -type f -mmin +30 (30분 지난 파일)
find ./ -type f -mmin 30 (30분째 되는 파일)
find ./ -type f -mmin -30 (30분이 안되는 파일)
[기타] 명령어 응용을 위한 옵션 정리
-atime : access time
-ctime : create time
-mtime : modified time
-newerct : create time
-newermt : modified time
-newerat : access time
'Works > CentOS & RockyLinux' 카테고리의 다른 글
centos7 고정 ip 설정 (0) | 2017.09.13 |
---|---|
리눅스에서 tcpdump 명령어의 옵션 정리 (0) | 2017.06.20 |
useradd와 여러가지 설정들 (0) | 2017.06.08 |
vsFTP 에서 전송속도 제한 설정 (0) | 2017.06.08 |
yum repository 국내 mirror 설정 (0) | 2017.06.07 |