ch14 19


Using find to Clear Out Unneeded Files (Unix Power Tools, 3rd Edition) 14.19. Using find to Clear Out Unneeded Files Do you run find on your machine every night? Do you know what it has to go through just to find out if a file is three days old and smaller than ten blocks or owned by "fred" or setuid root? This is why I tried to combine all the things we need done for removal of files into one big find script: Go to http://examples.oreilly.com/upt3 for more information on: cleanup 2>&1 Section 36.16 #! /bin/sh # # cleanup - find files that should be removed and clean them # out of the file system. find / \( \( -name '#*' -atime +1 \) \ -o \( -name ',*' -atime +1 \) \ -o \( -name rogue.sav -atime +7 \) \ -o \( \( -name '*.bak' \ -o -name '*.dvi' \ -o -name '*.CKP' \ -o -name '.*.bak' \ -o -name '.*.CKP' \) -atime +3 \) \ -o \( -name '.emacs_[0-9]*' -atime +7 \) \ -o \( -name core \) \ -o \( -user guest -atime +9 \) \ \) -print -exec rm -f {} \; > /tmp/.cleanup 2>&1 This is an example of using a single find command to search for files with different names and last-access times (see Section 9.5). Doing it all with one find is much faster -- and less work for the disk -- than running a lot of separate finds. The parentheses group each part of the expression. The neat indentation makes this big thing easier to read. The -print -exec at the end removes each file and also writes the filenames to standard output, where they're collected into a file named /tmp/.cleanup -- people can read it to see what files were removed. You should probably be aware that printing the names to /tmp/.cleanup lets everyone see pathnames, such as /home/joe/personal/resume.bak, which some people might consider sensitive. Another thing to be aware of is that this find command starts at the root directory; you can do the same thing for your own directories. --CT and JP 14.18. Removing Every File but One15. Optimizing Disk Space Copyright © 2003 O'Reilly & Associates. All rights reserved.

Wyszukiwarka

Podobne podstrony:
ch14
ch14
CH14 (21)
RM ch14
ch14 (2)
ch14
ch14
ch14 (19)
CH14 (17)
ch14
ch14
BW ch14
ch14 (15)
ch14 (12)
DK2192 CH14

więcej podobnych podstron