close

按此前往linux完整教學目錄

 

 

搜尋非系統檔案的方法:

(1) find -name 檔案名:可搜尋在「當前目錄」下,其名稱(不包含副檔名)符合檔案名的檔案。這個指令可以搜尋到非系統檔。若要在家目錄下搜尋非系統檔案,這是個常用的指令。

但要注意,若用這個指令搜尋系統檔,要用root身分才有辦法,否則一般使用者可能沒有這樣的權限。

(重要!):若要找特定名稱的檔案,用以下的字元符號可能更方便:

(-1) 萬用字元* *代表「任意長度的任意字串」。

如:ls *.txt 就會列出當前目錄下所有副檔名為txt的檔案。

又如:ls -l a*f 就會列出當前目錄下所有完整檔案名為a開頭、f結尾的檔案其詳細資訊。

又如:ls *s* 就會列出當前目錄下所有完整檔案名包含s的檔案。

(-2) 問號??代表「一個任意字元」。

如:ls ?t.txt 會列出當前目錄下,名稱為「一個任意字元加上t.txt」的檔案。

(-3) [字元一字元二字元三…]。代表「一個可能是字元一、或字元二、或字元三的字元」。

如:ls [abcdehg]t.txt會列出當前目錄下,名稱為「一個特定字元加上t.txt」的檔案。其中,特定字元必須是abcdehg的其中一個。

(-4) [字元一-字元二]。代表一個「ASCII碼介於字元一和字元二之間的字元」。

(-5) [^字元一字元二字元三…]。代表「一個不能是字元一、或字元二、或字元三的字元」。

如:ls [abcdehg]t.txt會列出當前目錄下,名稱為「一個特定字元加上t.txt」的檔案。其中,特定字元不能是abcdehg的其中一個。

(2) find -size 大小:可搜尋在「當前目錄」下,其所占容量大於或小於大小的檔案。其中,可為加號+(表示大於),亦可為減號-(表示小於)大小的格式為:數字單位數字就是任意正整數,單位可為c(代表bytes)、k(代表kB)、M(代表MB)、G(代表GB)。如:

find -size +50M 代表要搜尋當前目錄下,大小超過50M的檔案。

(3) find -type 類型:可搜尋在「當前目錄」下,其類型等於類型的檔案。類型的寫法,可為:f(代表一般檔案)d(代表目錄)l(代表連結檔)b(代表區塊裝置檔)c(代表字元裝置檔)s(代表socket)p(代表FIFO)

(4) find -perm 權限:可搜尋在「當前目錄」下,其權限等於權限的檔案。權限的寫法,可為30~7的正整數(代表一般權限),亦可為40~7的正整數(代表特殊權限以及一般權限)。如:

find -perm 755代表要搜尋當前目錄下,一般權限為755的檔案。

(5) find -perm -權限:其中,權限的寫法如(4)。此指令可搜尋在當前目錄下,其權限包含權限的檔案。如:find -perm -0022,就是說搜尋當前目錄下,其權限包含「群組可寫」、「外人可寫」的檔案。只要一個檔案的權限包含「群組可寫」、「外人可寫」,就會被搜尋到。

 

 

上一篇:linux 檔案搜尋

下一篇:linux 檔案內容的處理

arrow
arrow
    創作者介紹
    創作者 埃伯 的頭像
    埃伯

    程式語言教學

    埃伯 發表在 痞客邦 留言(0) 人氣()