shell指令碼 find命令

來源:互聯網
上載者:User

find命令用於尋找,功能很強大,格式如下:

find pathname -options [-print -exec -ok ...]
pathname: find命令所尋找的目錄路徑。例如用.來表示目前的目錄,用/來表示系統根目錄。-print: find命令將匹配的檔案輸出到標準輸出。-exec: find命令對匹配的檔案執行該參數所給出的shell命令。相應命令的形式為'command' {  } \;,注意{   }和\;之間的空格。-ok: 和-exec的作用相同,只不過以一種更為安全的模式來執行該參數所給出的shell命令,在執行每一個命令之前,都會給出提示,讓使用者來確定是否執行。

命令選項很多,常用如下:

-name按照檔案名稱尋找檔案。-perm按照檔案許可權來尋找檔案。-prune使用這一選項可以使find命令不在當前指定的目錄中尋找,如果同時使用-depth選項,那麼-prune將被find命令忽略。-user按照檔案屬主來尋找檔案。-group按照檔案所屬的組來尋找檔案。-mtime -n +n按照檔案的更改時間來尋找檔案, - n表示檔案更改時間距現在n天以內,+ n表示檔案更改時間距現在n天以前。find命令還有-atime和-ctime 選項,但它們都和-m time選項。-nogroup尋找無有效所屬組的檔案,即該檔案所屬的組在/etc/groups中不存在。-nouser尋找無有效屬主的檔案,即該檔案的屬主在/etc/passwd中不存在。-newer file1 ! file2尋找更改時間比檔案file1新但比檔案file2舊的檔案。-type尋找某一類型的檔案,諸如:b - 塊裝置檔案。d - 目錄。c - 字元裝置檔案。p - 管道檔案。l - 符號連結檔案。f - 普通檔案。-size n:[c] 尋找檔案長度為n塊的檔案,帶有c時表示檔案長度以位元組計。-depth:在尋找檔案時,首先尋找目前的目錄中的檔案,然後再在其子目錄中尋找。-fstype:尋找位於某一類型檔案系統中的檔案,這些檔案系統類型通常可以在設定檔/etc/fstab中找到,該設定檔中包含了本系統中有關檔案系統的資訊。-mount:在尋找檔案時不跨越檔案系統mount點。-follow:如果find命令遇到符號連結檔案,就跟蹤至連結所指向的檔案。-cpio:對匹配的檔案使用cpio命令,將這些檔案備份到磁帶裝置中。-amin n尋找系統中最後N分鐘訪問的檔案-atime n尋找系統中最後n*24小時訪問的檔案-cmin n尋找系統中最後N分鐘被改變檔案狀態的檔案-ctime n尋找系統中最後n*24小時被改變檔案狀態的檔案 -mmin n尋找系統中最後N分鐘被改變檔案資料的檔案-mtime n尋找系統中最後n*24小時被改變檔案資料的檔案

一個find命令shell指令碼小例子如下,尋找目前的目錄下某個字串(通過參數形式傳入指令碼):

#!/bin/shfor afile in `find ./ -name "*"`; do        #echo $afile;        if [ -f "$afile" ]; then                wordnum=`cat $afile|grep $1 |wc -l`;                if [ "$wordnum" -ge 2 ]; then                        echo $afile;                fi        fidone

假如shell指令碼命名find_word.sh,同時賦予目前使用者可執行許可權,執行如下命令:

[@131.169 test]# find_word.sh ni

尋找含有 ni 的檔案

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.