파일과 디렉토리를 검색하는 명령어, grep 과 find 를 잘 활용하여 찾고자 하는 파일을 쉽게 찾자.
옵션
- name filename : 찾고자 하는 파일명을 검색 ( 사용예 : -name *.txt )
- atime +n : access time 이 n 일 이전인 파일을 찾는다.
- atime -n : access time 이 n 일 이내의 파일을 찾는다.
- mtime +n : n일 이전에 변경된 파일을 찾는다.
- mtime -n : n일 이내에 변경된 파일을 찾는다.
- type x : f - 파일 , d - 디렉토리
- maxdepth n : 지정된 디렉토리에서 n개 하위 디렉토리까지 검색
처리방법
- print : 찾은 파일의 절대 경로를 화면에 출력
- exec cmd {} \; 명령어 구분자로 ; 을 사용하기 때문에 \; 를 항상 붙여주어야 한다.
[ example ]
1. 파일명이 *.log 이고 수정일이 3일 이전 파일을 삭제
find . -name "*.log" -a -mtime +3 -exec rm {} \;
2. 수정된지 7일 이상된 파일을 삭제한다.
find /home/log -type f -mtime +7 -exec rm -f {} \;
3. 수정된지 600일 이상된 파일을 ./backup 디렉토리로 이동한다.
find . -name "local*" -mtime +600 -type f -exec mv {} ./backup \;
4. 하위 2개 디렉토리까지 검색한다. maxdepth = 1 이면 현재 디렉토리만 검색
find . -name "local*" -mtime +590 -type f -maxdepth 2
5. crontab 등록
$ crontab -e
# /usr/apache/log경로의 7일 이상된 로그 파일 삭제
10 1 * * * find /usr/apache/log -type f -mtime +7 -exec rm -f {} \;
'linux > centOS' 카테고리의 다른 글
CentOS6 - GitLab 설치 (0) | 2014.12.28 |
---|---|
taskkill process (0) | 2014.09.17 |
[centOS6] apache 설치 (0) | 2013.05.22 |
postfix 설치 - centOS 6 (0) | 2013.04.28 |
centOS 6 rabbitMQ 설치 (0) | 2013.04.27 |