如果要刪除某資料夾 /oradb/oradata/arch 底下的log :
先用-ok 選項(不執行)
find /oradb/oradata/arch -mtime +3 -regex ".*.dbf" -user oracle -type f -ok rm -f {} \;
先用-ok 選項(不執行)
find /oradb/oradata/arch -mtime +3 -regex ".*.dbf" -user oracle -type f -ok rm -f {} \;
#delete *.arc before three days ago and user ownership is belong to oracle
再用-exec 實際執行
再用-exec 實際執行
find /oradb/oradata/arch -mtime +3 -regex ".*.dbf" -user oracle -type f -exec rm -f {} \;
-mtime +3 保留昨天前天大前天的資料
-regex .*.dbf : regular expression ,所有.dbf結尾的檔案
-user oracle : 檔案owner 屬於oracle的檔案
-type f : 檔案屬性為file
-ok : 每找到一個檔案詢問一次,測試用
-exec : 直接執行
-
0 0 * * * /script.sh
0-59 0-23 1-31 1-12 0-6
-
find $ORACLE_HOME/rdbms/audit -mtime +21 -regex ".*.aud" -user oracle -type f -exec rm -f {} \;
-mtime +7 保留七天內檔案 (如只要保留至24hr前 則用-mtime + 1)
-regex .*.dbf : regular expression ,所有.dbf結尾的檔案
-user oracle : 檔案owner 屬於oracle的檔案
-type f : 檔案屬性為file
-ok : 每找到一個檔案詢問一次,測試用
-exec : 直接執行
-
-在比較舊的unix OS , find command , 無法用regular expression
bash-2.05# cat del_aud.sh
find /oracle/rdbms/audit/ aud -mtime +7 -user oracle -type f -exec rm -f {} \;
-
刪除*.dmp , *.log
-找出哪些檔案裡面含有"test"的內容
find /wls11g -print |xargs grep "test"
find /oracle/rdbms/audit \(-name '*.dmp' -o -name '*.log' \) -mtime 3 -type f -user oracle -exec rm {} \;
-
找出哪些檔案大小超過10M
#20480k個block (512byte/block) = 10MB
find / -type f -size +20480k -exec ls -l {} \; | awk '{ print $9 " " $5/1024/1024 " MB" }'
@solaris OS
find / -type f -size +20480k -exec ls -lh {} \;
這指令可以找出在 有那些檔案 size > 10M B 的檔案,並搬移到old 資料夾
-將trc 檔案搬移之script
mkdir ./old
days="+3"
find ./ -type f -name '*.trc' -mtime $days | \
while read file
do
mv $file ./old/.
done
#找出某目錄下所有的symbolic link (包含sub-dir)
find ./ -type l -exec ls -l {} \;
#找出某目錄下所有的symbolic link (包含sub-dir)
find ./ -type l -exec ls -l {} \;
沒有留言:
張貼留言