linux命令 find詳解

2022-04-01 06:39:24 字數 2497 閱讀 5315

linux中find命令常見用法示例:

find path -option [-print] [ -exec -ok command ] {} \;

#-print 將查詢到的檔案輸出到標準輸出

#-exec    command    {} \;       -----將查到的檔案執行command操作,{} 和 \;之間有空格

#-ok 和-exec相同,只不過在操作前要詢使用者

-name    filename               #查詢名為filename的檔案

-perm                         #按執行許可權來查詢

-user     username              #按檔案屬主來查詢

-group groupname              #按組來查詢

-mtime    -n +n                 #按檔案更改時間來查詢檔案,-n指n天以內,+n指n天以前

-atime     -n +n                #按檔案訪問時間來查gin: 0px">-perm                          #按執行許可權來查詢

-user     username              #按檔案屬主來查詢

-group groupname              #按組來查詢

-mtime    -n +n                 #按檔案更改時間來查詢檔案,-n指n天以內,+n指n天以前

-atime     -n +n                #按檔案訪問時間來查詢檔案,-n指n天以內,+n指n天以前 

-ctime     -n +n                #按檔案建立時間來查詢檔案,-n指n天以內,+n指n天以前 

-nogroup                      #查無有效屬組的檔案,即檔案的屬組在/etc/groups中不存在

-nouser                       #查無有效屬主的檔案,即檔案的屬主在/etc/passwd中不存

-newer    f1 !f2                找檔案,-n指n天以內,+n指n天以前 

-ctime     -n +n                #按檔案建立時間來查詢檔案,-n指n天以內,+n指n天以前 

-nogroup                      #查無有效屬組的檔案,即檔案的屬組在/etc/groups中不存在

-nouser                       #查無有效屬主的檔案,即檔案的屬主在/etc/passwd中不存

-newer    f1 !f2                #查更改時間比f1新但比f2舊的檔案

-type      b/d/c/p/l/f          #查是塊裝置、目錄、字元裝置、管道、符號鏈結、普通檔案

-size       n[c]                #查長度為n塊[或n位元組]的檔案

-depth                        #使查詢在進入子目錄前先行查詢完本目錄

-fstype                       #查更改時間比f1新但比f2舊的檔案

-mount                        #查檔案時不跨越檔案系統mount點

-follow                       #如果遇到符號鏈結檔案,就跟蹤鏈結所指的檔案

-cpio                         #對匹配的檔案使用cpio命令,將他們備份到磁帶裝置中

-prune                        #忽略某個目錄

1)在/tmp中查詢所有的*.h,並在這些檔案中查詢「syscall_vector",最後列印出所有包含"syscall_vector"的檔名

a) find    /tmp    -name    "*.h"    | xargs    -n50    grep syscall_vector

b) grep    syscall_vector    /tmp/*.h | cut     -d':'    -f1| uniq > filename

c) find    /tmp    -name "*.h"    -exec grep "syscall_vector"    {}    \; -print

2)find / -name filename -exec rm -rf {} \;

find / -name filename -ok rm -rf {} \;

3)比如要查詢磁碟中大於3m的檔案:

find . -size +3000k -exec ls -ld {} ;

4)將find出來的東西拷到另乙個地方

find *.c -exec cp '{}' /tmp ';'

如果有特殊檔案,可以用cpio,也可以用這樣的語法:

find dir -name filename -print | cpio -pdv newdir

Linux 命令find詳解

find命令是用來在給定目錄下查詢符合條件的檔案 find 命令格式 find pathname options print exec pathname 表示find命令所查詢的檔案或目錄的路徑。例如 home print find命令將匹配的檔案輸出到標準輸出。exec find命令對匹配的檔案執...

Linux命令 find命令詳解

find命令格式 find path option print exec ok xargs grep command 引數說明 path find命令所查詢的目錄路徑。表示 home目錄 來表示當前目錄 來表示系統根目錄。print find命令將匹配的檔案輸出到標準輸出。exec find命令對匹...

Linux命令之find命令詳解

linux命令之find命令詳解 find命令是乙個在unix檔案系統中查詢檔案的常用命令,可以進行很多條件查詢。讓我們來看一些find命令的例項。語法 find 路徑 約束條件 如何查詢在檔名中含有指定關鍵字的檔案?下面這條命令查詢在 etc 目錄下所有檔名中含有 mail 的檔案。find et...