linu查詢find命令及刪除7天前的檔案
原創碼上筆記 發布於2017-10-16 16:57:49 閱讀數 14910 收藏
展開在/ l o g s目錄中查詢更改時間在7日以前的檔案並刪除它們:
$ find logs/ -type f -mtime +7 -exec rm -f {} ;
在/ l o g s目錄中查詢更改時間在7日以內的檔案並刪除它們:
$ find logs/ -type f -mtime -7 -exec rm -f {} ;
然後加入的計畫任務中每日執行便可
linux中find常見用法示例以及刪除7天前的檔案
·find path -option [ -print ] [ -exec -ok command ] {} ;
find命令的引數;
pathname: find命令所查詢的目錄路徑。例如用.來表示當前目錄,用/來表示系統根目錄。
-print: find命令將匹配的檔案輸出到標準輸出。
-exec: find命令對匹配的檔案執行該引數所給出的shell命令。相應命令的形式為』command』 ;,注意和\;之間的空格。
-ok: 和-exec的作用相同,只不過以一種更為安全的模式來執行該引數所給出的shell命令,在執行每乙個命令之前,都會給出提示,讓使用者來確定是否執行。
-name filename #查詢名為filename的檔案
-perm #按執行許可權來查詢
-user username #按檔案屬主來查詢
-group groupname #按組來查詢
-mtime -n +n #按檔案更改時間來查詢檔案,-n指n天以內,+n指n天以前
-atime -n +n #按檔案訪問時間來查gin: 0px">
-ctime -n +n #按檔案建立時間來查詢檔案,-n指n天以內,+n指n天以前
katex parse error: expected 'eof', got '#' at position 40: …t" -print #̲在home中查.txt檔案並顯示
$find . -name 「.txt" -print
$find . -name "[a-z]」 -print #查以大寫字母開頭的檔案
$find /etc -name 「host*」 -print #查以host開頭的檔案
$find . -name 「[a-z][a-z][0–9][0–9].txt」 -print #查以兩個小寫字母和兩個數字開頭的txt檔案
$find . -perm 755 -print
$find . -perm -007 -exec ls -l {} ; #查所有使用者都可讀寫執行的檔案同-perm 777
$find . -type d -print
$find . ! -type d -print
$find . -type l -print
$find . -size +1000000c -print #查長度大於1mb的檔案
$find . -size 100c -print # 查長度為100c的檔案
$find . -size +10 -print #查長度超過期作廢10塊的檔案(1塊=512位元組)
find -name april* 在當前目錄下查詢以april開始的檔案
find -name april* fprint file 在當前目錄下查詢以april開始的檔案,並把結果輸出到file中
find -name ap* -o -name may* 查詢以ap或may開頭的檔案
find /mnt -name tom.txt -ftype vfat 在/mnt下查詢名稱為tom.txt且檔案系統型別為vfat的檔案
find /mnt -name t.txt ! -ftype vfat 在/mnt下查詢名稱為tom.txt且檔案系統型別不為vfat的檔案
find /tmp -name wa* -type l 在/tmp下查詢名為wa開頭且型別為符號鏈結的檔案
find /home -mtime -2 在/home下查最近兩天內改動過的檔案
find /home -atime -1 查1天之內被訪問過的檔案
find /home -mmin +60 在/home下查60分鐘前改動過的檔案
find /home -amin +30 查最近30分鐘前被訪問過的檔案
find /home -newer tmp.txt 在/home下查更新時間比tmp.txt近的檔案或目錄
find /home -anewer tmp.txt 在/home下查訪問時間比tmp.txt近的檔案或目錄
find /home -used -2 列出檔案或目錄被改動過之後,在2日內被訪問過的檔案或目錄
find /home -user cnscn 列出/home目錄內屬於使用者cnscn的檔案或目錄
find /home -uid +501 列出/home目錄內使用者的識別碼大於501的檔案或目錄
find /home -group cnscn 列出/home內組為cnscn的檔案或目錄
find /home -gid 501 列出/home內組id為501的檔案或目錄
find /home -nouser 列出/home內不屬於本地使用者的檔案或目錄
find /home -nogroup 列出/home內不屬於本地組的檔案或目錄
find /home -name tmp.txt -maxdepth 4 列出/home內的tmp.txt 查時深度最多為3層
find /home -name tmp.txt -mindepth 3 從第2層開始查
find /home -empty 查詢大小為0的檔案或空目錄
find /home -size +512k 查大於512k的檔案
find /home -size -512k 查小於512k的檔案
find /home -links +2 查硬連線數大於2的檔案或目錄
find /home -perm 0700 查許可權為700的檔案或目錄
find /tmp -name tmp.txt -exec cat {} ;
find /tmp -name tmp.txt -ok rm {} ;
find命令用法
關於查詢 檔案查詢 locate非實時查詢 根據索引查詢 find實時查詢 根據檔案的各種屬性去找到相對應檔案 根據檔案的各種屬性去找到相對應檔案 文字搜尋 grep,egrep,fgrep find的用法 查詢條件 檔名類 使用者和組類 檔案型別 大小和時間 根據許可權查詢 組合條件查詢 處理動作...
find命令的 prune用法
對find引數 prune的理解 ps 對find引數 prune的理解 prune就像乙個判斷語 句,當發現 prune前面的表示式math時,執行到 prune之後就會輸出乙個1結果,如果shell的話,可以使用echo 來看結果,如果 prune後面跟的是 o選項,用c語言的語法來講的話就是1...
find命令的基本用法
linux 中find 常用示例解析 find h l p d debugopts olevel path expression 其實 h l p d debugopts olevel 這幾個選項並不常用 至少在我的日常工作中,沒 有用到過 上面的find命令的常用形式可以簡化為 find path...