find
命令有三個選項: 1)
-mtime
按照檔案的更改時間來查詢檔案 2)
-ctime
按照檔案狀態改動時間來查詢檔案 3)
-atime
按照檔案訪問時間來查詢檔案
不知道你對這三種「時間」是如何認識的?
1)
mtime
指檔案的內容發生改變,如:
cat>>file1
2) ctime
指檔案的屬性(檔案的
i節點)被改變,如
: chmod u+x file1
3) atime
指檔案被讀取過,如:
cat file1
使用ls
命令,如何看這三種時間?
1) mtime ls –l
2) ctime ls –lc
3) atime ls –lu (u和
c選項必須和
l一起用)
不知偶理解得對不對?
還有乙個問題?
find
命令查詢檔案時可以跳過某個子目錄,如在當前路徑中查詢所有檔案,但不查詢在子目錄
xia中的檔案
find . –path 「./xia」 –prune –o print
進一步,查詢字元
1開頭的檔案,在當前路徑中查詢,但跳過子目錄
xia
find . –path 「./xia」 –prune –o –name 「1*」 -print
這個命令的機制是:
if path = ./xia
then
-prune
else
if filename = 「1*」
then
-print fi
fi
《幾個有用的例子》
* 跳過多個目錄
find /usr/sam -path /(/usr/sam/dir1 -o /usr/sam/dir2/) -prune -o -name "temp*" -print
* 查詢當前目錄中24小時內被修改過的檔案
find . /( -type d ! -name . -prune /) -o /(-mtime -1 -print /)
* 在指定目錄(如:./test)
中查詢24小時內修改過的檔案
find ./test /( -type d ! -name 'test' -prune /) -o /( -type f -mtime -1 -print /)
* 建立乙個尋找檔案的別名
alias ff "find . -name'*/!*'-ls"
使用別名:ff testfile
linux常用命令之find
由於對linux命令一知半解,修改centos網絡卡時需要知道network scripts目錄的絕對路徑,但是只記得在etc目錄下,所以一直用特別笨的方法 cd etc 然後ls etc檢視到sysconfig 然後再cd etc sysconfig再找下一層。直到今天翻看之前筆記時發現了find...
linux常用命令之find
根據屬主,屬組查詢 根據檔案型別查詢 組合查詢 根據檔案大小查詢 數字 單位 查詢的範圍是 數字 1,數字 find etc size 3k,查詢大於2k小於等於3k的檔案 使用減號表示 0,數字 1 例,find etc size 3k,查詢所有小於等於2k的檔案 加號表示 數字,oo 例,fin...
find常用命令
find 是linux下乙個非常重要的搜尋指令。find在目錄結構中搜尋檔案,並執行指定的操作。find 具有強大的功能,即使系統檔案中含有網路檔案系統 nfs find 指令在該檔案系統中同樣有效,只要有相應的許可權。一 find 命令概述 命令格式 find pathname options p...