---------------
find 명령어 활용
---------------
최근 몇 일 전에 만들어진(수정된) 파일을 찾아서 지워주기.
- crontab에 걸어서 주기적으로 실행하면 더 효과적.
- 실제 파일 생성후 테스트 하였슴.
1. script 명령으로 실제 테스트 내용을 캡쳐시작한다.
# script find_auto_after_rm
Script started, file is find_auto_after_rm
2. 정확한 시점의 구분을 위해 현재 시간 및 날짜을 확인한다.
# date
Thu Jun 24 13:47:07 KORDT 2004
3. 테스트를 위한 파일들을 만들어본다.
touch 명령어의 -t 옵션을 이용해 날짜별로 아래와 같이 만들어본다.
# touch -t 06132222 0613 ; 0613이라는 파일의 작성시간을 6월13일 22시 22분으로 만든다.
# touch -t 06142222 0614
# touch -t 06152222 0615
# touch -t 06162222 0616
# touch -t 06172222 0617
# touch -t 06182222 0618
# touch -t 06192222 0619
# touch -t 06202222 0620
# touch -t 06212222 0621
# touch -t 06222222 0622
# touch -t 06232222 0623
# touch -t 06242222 0624
# touch -t 06252222 0625
# ls -la
total 32
drwxr-sr-x 2 root sys 512 Jun 24 13:47 .
drwxr-sr-x 5 sys sys 1024 Jun 24 13:43 ..
-rw-r--r-- 1 root sys 0 Jun 13 22:22 0613
-rw-r--r-- 1 root sys 0 Jun 14 22:22 0614
-rw-r--r-- 1 root sys 0 Jun 15 22:22 0615
-rw-r--r-- 1 root sys 0 Jun 16 22:22 0616
-rw-r--r-- 1 root sys 0 Jun 17 22:22 0617
-rw-r--r-- 1 root sys 0 Jun 18 22:22 0618
-rw-r--r-- 1 root sys 0 Jun 19 22:22 0619
-rw-r--r-- 1 root sys 0 Jun 20 22:22 0620
-rw-r--r-- 1 root sys 0 Jun 21 22:22 0621
-rw-r--r-- 1 root sys 0 Jun 22 22:22 0622
-rw-r--r-- 1 root sys 0 Jun 23 22:22 0623
-rw-r--r-- 1 root sys 0 Jun 24 2004 0624
-rw-r--r-- 1 root sys 0 Jun 25 2004 0625
-rwx------ 1 root sys 299 Jun 24 13:40 auto_find
-rw-r--r-- 1 root sys 42 Jun 24 13:47 find_auto_after_rm
4. find의 -mtime옵션을 사용하여서 일주일(7일)을 기준으로 해서 테스트시작해본다.
---------------------------------------------------------------
* 현재 시점에서 7일이전에 만들어진(수정되어진) 파일을 출력한다.
---------------------------------------------------------------
# find . -mtime +7 -print
./0613
./0614
./0615
./0616
-> 현재 시점이 6월 24일 14시정도 이므로 7일전에 만들어진 파일들만 출력된다.
---------------------------------------------------------------
* 현재 시점에서 7일 안에 만들어진(수정되어진) 파일 출력한다.
---------------------------------------------------------------
# find . -mtime -7 -print
.
./auto_find
./0617
./0618
./0619
./0620
./0621
./0622
./0623
./find_auto_after_rm
---------------------------------------------------------------
* 현재 시점에서 7일전 그 날에 만들어진(수정되어진) 파일 출력한다.
---------------------------------------------------------------
# find . -mtime 7 -print
./0617
5. 실제 결과로 출력되어진 값을 받아서, 바로 검색해서 지워보자.
-----------------------------------------------------------------------------
* 현재 시점에서 7일이전에 만들어진(수정되어진) 파일을 찾고, 찾을 파일을 삭제한다.
------------------------------------------------------------------------------
# find . -mtime +7 -exec rm {} \;
# ls -la ; 지워졌는 지 확인. 7일전에 만들어진 0613부터 0616파일이 지워졌다.
total 24
drwxr-sr-x 2 root sys 512 Jun 24 14:01 .
drwxr-sr-x 5 sys sys 1024 Jun 24 13:43 ..
-rw-r--r-- 1 root sys 0 Jun 17 22:22 0617
-rw-r--r-- 1 root sys 0 Jun 18 22:22 0618
-rw-r--r-- 1 root sys 0 Jun 19 22:22 0619
-rw-r--r-- 1 root sys 0 Jun 20 22:22 0620
-rw-r--r-- 1 root sys 0 Jun 21 22:22 0621
-rw-r--r-- 1 root sys 0 Jun 22 22:22 0622
-rw-r--r-- 1 root sys 0 Jun 23 22:22 0623
-rw-r--r-- 1 root sys 0 Jun 24 2004 0624
-rw-r--r-- 1 root sys 0 Jun 25 2004 0625
-rwx------ 1 root sys 299 Jun 24 13:59 auto_find
6. 스크립트(즉, 캡쳐한 내용 저장, 콘트롤키+D)
# ^D
Script done, file is find_auto_after_rm
실제 로그 파일이라던지...그런 것들 주기적으로 지울 때 좋은 예제인것 같다.
간단한 거지만, 실제 테스트 해봐야 되겠죠. 왜냐, 유닉스 파일들은 지우면 못 살리니까,
신중을 기해서 테스트 후 ....항상... rm명령 사용은 항상 조심^^합시다.
'UNIX&LINUX > AIX' 카테고리의 다른 글
AIX 서버 디스크 용량 확인 후 로그 삭제할 때 (0) | 2014.05.16 |
---|---|
AIX du max-depth 1 (0) | 2014.05.13 |
[AIX] 폴더단위 용량 보기 (0) | 2014.05.13 |
[AIX] 파일시스템 용량 늘리기 (0) | 2014.05.13 |
AIX, UNIX, 로그파일 30일이 지난 파일들 정리하기 (0) | 2014.05.12 |
AIX 5.2 에서는 find 에 -mmin 옵션이 없다? (0) | 2014.03.26 |
[AIX] 유용한 find 명령어에 대해서... (0) | 2014.03.26 |
[AIX] find 명령어의 활용 ( 예제) (0) | 2014.03.26 |