第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定

01.自行查找資料, 對(duì)find命令進(jìn)行擴(kuò)充學(xué)習(xí),并做筆記.[SZEZ]

請(qǐng)同學(xué)們跟帖回復(fù)。

正在回答

26 回答

查當(dāng)前目錄下的所有普通文件
-------------------------------------------------------------------------------- # find . -type f -exec ls -l {} \;
-rw-r--r--????? 1 root?????? root????????? 34928 2003-02-25??? ./conf/httpd.conf
-rw-r--r--????? 1 root?????? root????????? 12959 2003-02-25??? ./conf/magic
-rw-r--r--????? 1 root?????? root??????????? 180 2003-02-25??? ./conf.d/README
查當(dāng)前目錄下的所有普通文件,并在- e x e c選項(xiàng)中使用ls -l命令將它們列出
=================================================
在/ l o g s目錄中查找更改時(shí)間在5日以前的文件并刪除它們:
$ find logs -type f -mtime +5 -exec??? -ok??? rm {} \;
=================================================
查詢(xún)當(dāng)天修改過(guò)的文件
[root@book class]# find??? ./??? -mtime??? -1??? -type f??? -exec??? ls -l??? {} \;
=================================================
查詢(xún)文件并詢(xún)問(wèn)是否要顯示
[root@book class]# find??? ./??? -mtime??? -1??? -type f??? -ok??? ls -l??? {} \;??
< ls ... ./classDB.inc.php > ? y
-rw-r--r--????? 1 cnscn????? cnscn???????? 13709??? 1月 12 12:22 ./classDB.inc.php
[root@book class]# find??? ./??? -mtime??? -1??? -type f??? -ok??? ls -l??? {} \;??
< ls ... ./classDB.inc.php > ? n
[root@book class]# =================================================
查詢(xún)并交給awk去處理
[root@book class]# who??? |??? awk??? '{print $1"\t"$2}'
cnscn???? pts/0 =================================================
awk---grep---sed [root@book class]# df??? -k |??? awk '{print $1}' |??? grep??? -v??? 'none' |??? sed??? s"/\/dev\///g"
文件系統(tǒng)
sda2
sda1
[root@book class]# df??? -k |??? awk '{print $1}' |??? grep??? -v??? 'none'
文件系統(tǒng)
/dev/sda2
/dev/sda1


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)比如要查找磁盤(pán)中大于3M的文件:
find . -size +3000k -exec ls -ld {} ;
4)將find出來(lái)的東西拷到另一個(gè)地方
find *.c -exec cp '{}' /tmp ';' 如果有特殊文件,可以用cpio,也可以用這樣的語(yǔ)法:
find dir -name filename -print | cpio -pdv newdir
6)查找2004-11-30 16:36:37時(shí)更改過(guò)的文件
# A=`find ./ -name "*php"` |??? ls -l --full-time $A 2>/dev/null | grep "2004-11-30 16:36:37

二、linux下find命令的用法

1. 基本用法:
????? find / -name 文件名 ???? find ver1.d ver2.d -name '*.c' -print??? 查找ver1.d,ver2.d *.c文件并打印 ???? find . -type d -print 從當(dāng)前目錄查找,僅查找目錄,找到后,打印路徑名??捎糜诖蛴∧夸浗Y(jié)構(gòu)。
2. 無(wú)錯(cuò)誤查找:
????? find / -name access_log 2 >/dev/null
3. 按尺寸查找:
????? find / -size 1500c (查找1,500字節(jié)大小的文件,c表示字節(jié))
????? find / -size +1500c (查找大于1,500字節(jié)大小的文件,+表示大于)????
????? find / -size +1500c (查找小于1,500字節(jié)大小的文件,-表示小于)????
4. 按時(shí)間:
????? find / -amin n 最后n分鐘
????? find / -atime n 最后n天
????? find / -cmin n 最后n分鐘改變狀態(tài)
????? find / -ctime n 最后n天改變狀態(tài)
5. 其它:
????? find / -empty 空白文件、空白文件夾、沒(méi)有子目錄的文件夾
????? find / -false 查找系統(tǒng)中總是錯(cuò)誤的文件
????? find / -fstype type 找存在于指定文件系統(tǒng)的文件,如type為ext2
????? find / -gid n 組id為n的文件
????? find / -group gname 組名為gname的文件
????? find / -depth n 在某層指定目錄中優(yōu)先查找文件內(nèi)容
????? find / -maxdepth levels 在某個(gè)層次目錄中按遞減方式查找
6. 邏輯
????? -and 條件與 -or 條件或
7. 查找字符串
????? find . -name '*.html' -exec grep 'mailto:'{}


0 回復(fù) 有任何疑惑可以回復(fù)我~

?find命令

????  功能:在目錄結(jié)構(gòu)中搜索文件,并執(zhí)行指定的操作。此命令提供了相當(dāng)多的查找條件,功能很強(qiáng)大。

????  語(yǔ)法:find 起始目錄 尋找條件 操作

????  說(shuō)明:find命令從指定的起始目錄開(kāi)始,遞歸地搜索其各個(gè)子目錄,查找滿足尋找條件的文件并對(duì)之采取相關(guān)的操作。

????  該命令提供的尋找條件可以是一個(gè)用邏輯運(yùn)算符not、and、or組成的復(fù)合條件。邏輯運(yùn)算符and、or、not的含義為:

????  (1)and:邏輯與,在命令中用“-a”表示,是系統(tǒng)缺省的選項(xiàng),表示只有當(dāng)所給的條件都滿足時(shí),尋找條件才算滿足。例如:

????  $ find –name ’tmp’ –xtype c -user ’inin’

????  該命令尋找三個(gè)給定條件都滿足的所有文件。

???? ?。?)or:邏輯或,在命令中用“-o”表示。該運(yùn)算符表示只要所給的條件中有一個(gè)滿足時(shí),尋找條件就算滿足。例如:

????  $ find –name ’tmp’ –o –name ’mina*’

???? 

????  該命令查詢(xún)文件名為’tmp’或是匹配’mina*’的所有文件。

???? ?。?)not:邏輯非,在命令中用“!”表示。該運(yùn)算符表示查找不滿足所給條件的文件。例如:

????  $ find ! –name ’tmp’

????  該命令查詢(xún)文件名不是’tmp’的所有文件。

????  需要說(shuō)明的是:當(dāng)使用很多的邏輯選項(xiàng)時(shí),可以用括號(hào)把這些選項(xiàng)括起來(lái)。為了避免Shell本身對(duì)括號(hào)引起誤解,在話號(hào)前需要加轉(zhuǎn)義字符“”來(lái)去除括號(hào)的意義。

????  例:$ find (–name ’tmp’ –xtype c -user ’inin’ )

????  尋找條件有以下選項(xiàng):

????  首先,下列各個(gè)選項(xiàng)中的n值可以有三種輸入方式,假設(shè)n為20,則:

????  +20 表示20以后(21,22,23等)

????  -20 表示20以前(19,18,17等)

????  20 表示正好是20

????  1. 以名稱(chēng)和文件屬性查找。

????  - name ’字串’ 查找文件名匹配所給字串的所有文件,字串內(nèi)可用通配符*、?、[ ]。

????  - lname ’字串’ 查找文件名匹配所給字串的所有符號(hào)鏈接文件,字串內(nèi)可用通配符*、?、[ ]。

????  -gid n 查找屬于ID號(hào)為n的用戶(hù)組的所有文件。

????  -uid n 查找屬于ID號(hào)為n的用戶(hù)的所有文件。

????  -group ’字串’ 查找屬于用戶(hù)組名為所給字串的所有的文件。

????  -user ’字串’ 查找屬于用戶(hù)名為所給字串的所有的文件。

???? -nogroup 查找無(wú)有效所屬組的文件,即該文件所屬的組在/ e t c / g r o u p s中不存在。

???? -nouser 查找無(wú)有效屬主的文件,即該文件的屬主在/ e t c / p a s s w d中不存在。

???? -newer file1 ! file2 查找更改時(shí)間比文件f i l e 1新但比文件f i l e 2舊的文件。

????  -empty 查找大小為0的目錄或文件。

????  -path ’字串’ 查找路徑名匹配所給字串的所有文件,字串內(nèi)可用通配符*、?、[ ]。

????  -perm 權(quán)限 查找具有指定權(quán)限的文件和目錄,權(quán)限的表示可以如711,644。

????  -size n[bckw] 查找指定文件大小的文件,n后面的字符表示單位,缺省為b,代表512字節(jié)的塊。

????  -type x 查找類(lèi)型為x的文件,x為下列字符之一:

????  b 塊設(shè)備文件

????  c 字符設(shè)備文件

????  d 目錄文件

????  p 命名管道(FIFO)

????  f 普通文件

????  l 符號(hào)鏈接文件(symbolic links)

????  s socket文件

????  -xtype x 與-type基本相同,但只查找符號(hào)鏈接文件。

????  2. 以時(shí)間為條件查找

????  - amin n 查找n分鐘以前被訪問(wèn)過(guò)的所有文件。

????  - atime n 查找n天以前被訪問(wèn)過(guò)的所有文件。

????  - cmin n 查找n分鐘以前文件狀態(tài)被修改過(guò)的所有文件。

????  - ctime n 查找n天以前文件狀態(tài)被修改過(guò)的所有文件。

????  - mmin n 查找n分鐘以前文件內(nèi)容被修改過(guò)的所有文件。

????  - mtime n 查找n天以前文件內(nèi)容被修改過(guò)的所有文件。

????  3. 可執(zhí)行的操作

????  - exec 命令名稱(chēng) {} \; 對(duì)符合條件的文件執(zhí)行所給的unix 命令,而不詢(xún)問(wèn)用戶(hù)是否需要執(zhí)行該命令。{}表示命令的參數(shù)即為所找到的文件,命令的末尾必須以“ \;”結(jié)束,"{}"和"\;"之間必須有一個(gè)空格。

????  - ok 命令名稱(chēng) {} \; 對(duì)符合條件的文件執(zhí)行所給的Linux 命令,與exec不同的是,它會(huì)詢(xún)問(wèn)用戶(hù)是否需要執(zhí)行該命令。

????  - ls 詳細(xì)列出所找到的所有文件。

????  - fprintf 文件名 將找到的文件名寫(xiě)入指定文件。

????  - print 在標(biāo)準(zhǔn)輸出設(shè)備上顯示查找出的文件名。

????  - printf 格式 格式的寫(xiě)法請(qǐng)參考有關(guān)C語(yǔ)言的書(shū)。

????使用name選項(xiàng)

????文件名選項(xiàng)是f i n d命令最常用的選項(xiàng),要么單獨(dú)使用該選項(xiàng),要么和其他選項(xiàng)一起使用。

????可以使用某種文件名模式來(lái)匹配文件,記住要用引號(hào)將文件名模式引起來(lái)。

????不管當(dāng)前路徑是什么,如果想要在自己的根目錄$ H O M E中查找文件名符合* . t x t的文件,

????使用~作為' p a t h n a m e參數(shù),波浪號(hào)~代表了你的$ H O M E目錄。

????$ find ~ -name "*.txt" -print

????想要在當(dāng)前目錄及子目錄中查找所有的' * . t x t'文件,可以用:

????$ find . -name "*.txt" -print

????想要的當(dāng)前目錄及子目錄中查找文件名以一個(gè)大寫(xiě)字母開(kāi)頭的文件,可以用:

????$ find . -name "[A-Z]*" -print

????想要在/ e t c目錄中查找文件名以h o s t開(kāi)頭的文件,可以用:

????$ find /etc -name "host*" -print

????想要查找$ H O M E目錄中的文件,可以用:

????$ find ~ -name "*" -print 或find . -print

????要想讓系統(tǒng)高負(fù)荷運(yùn)行,就從根目錄開(kāi)始查找所有的文件。如果希望在系統(tǒng)管理員那里

????保留一個(gè)好印象的話,最好在這么做之前考慮清楚!

????$ find / -name "*" -print

????如果想在當(dāng)前目錄查找文件名以?xún)蓚€(gè)小寫(xiě)字母開(kāi)頭,跟著是兩個(gè)數(shù)字,最后是* . t x t的文

????件,下面的命令就能夠返回名為a x 3 7 . t x t的文件:

????$ find . -name "[a-z][a-z][0--9][0--9].txt" -print

????使用perm選項(xiàng)

????如果希望按照文件權(quán)限模式來(lái)查找文件的話,可以采用- p e r m選項(xiàng)。你可能需要找到所有

????用戶(hù)都具有執(zhí)行權(quán)限的文件,或是希望查看某個(gè)用戶(hù)目錄下的文件權(quán)限類(lèi)型。在使用這一選

????項(xiàng)的時(shí)候,最好使用八進(jìn)制的權(quán)限表示法。

????為了在當(dāng)前目錄下查找文件權(quán)限位為7 5 5的文件,即文件屬主可以讀、寫(xiě)、執(zhí)行,其他用

????戶(hù)可以讀、執(zhí)行的文件,可以用:

????$ find . -perm 755 -print

????如果希望在當(dāng)前目錄下查找所有用戶(hù)都可讀、寫(xiě)、執(zhí)行的文件(要小心這種情況),我們

????可以使用f i n d命令的- p e r m選項(xiàng)。在八進(jìn)制數(shù)字前面要加一個(gè)橫杠-。在下面的命令中- p e r m代

????表按照文件權(quán)限查找,而' 0 0 7'和你在c h m o d命令的絕對(duì)模式中所采用的表示法完全相同。

????$ find . -perm -007 -print

????忽略某個(gè)目錄

????如果在查找文件時(shí)希望忽略某個(gè)目錄,因?yàn)槟阒滥莻€(gè)目錄中沒(méi)有你所要查找的文件,

????那么可以使用- p r u n e選項(xiàng)來(lái)指出需要忽略的目錄。在使用- p r u n e選項(xiàng)時(shí)要當(dāng)心,因?yàn)槿绻阃?/p>

????時(shí)使用了- d e p t h選項(xiàng),那么- p r u n e選項(xiàng)就會(huì)被f i n d命令忽略。

????如果希望在/ a p p s目錄下查找文件,但不希望在/ a p p s / b i n目錄下查找,可以用:

????$ find /apps -name "/apps/bin" -prune -o -print

????使用user和nouser選項(xiàng)

????如果希望按照文件屬主查找文件,可以給出相應(yīng)的用戶(hù)名。例如,在$ H O M E目錄中查找

????文件屬主為d a v e的文件,可以用:

????$ find ~ -user dave -print

????在/ e t c目錄下查找文件屬主為u u c p的文件:

????$ find /etc -user uucp -print

????為了查找屬主帳戶(hù)已經(jīng)被刪除的文件,可以使用- n o u s e r選項(xiàng)。這樣就能夠找到那些屬主

????在/ e t c / p a s s w d文件中沒(méi)有有效帳戶(hù)的文件。在使用- n o u s e r選項(xiàng)時(shí),不必給出用戶(hù)名; f i n d命令

????能夠?yàn)槟阃瓿上鄳?yīng)的工作。例如,希望在/ h o m e目錄下查找所有的這類(lèi)文件,可以用:

????$ find /home -nouser -print

????使用group和nogroup選項(xiàng)

????就像u s e r和n o u s e r選項(xiàng)一樣,針對(duì)文件所屬于的用戶(hù)組, f i n d命令也具有同樣的選項(xiàng),為

????了在/ a p p s目錄下查找屬于a c c t s用戶(hù)組的文件,可以用:

????$ find /apps -group accts -print

????要查找沒(méi)有有效所屬用戶(hù)組的所有文件,可以使用n o g r o u p選項(xiàng)。下面的f i n d命令從文件

????系統(tǒng)的根目錄處查找這樣的文件

????$ fine/-nogroup-print

????按照更改時(shí)間查找文件

????如果希望按照更改時(shí)間來(lái)查找文件,可以使用m t i m e選項(xiàng)。如果系統(tǒng)突然沒(méi)有可用空間了,

????很有可能某一個(gè)文件的長(zhǎng)度在此期間增長(zhǎng)迅速,這時(shí)就可以用m t i m e選項(xiàng)來(lái)查找這樣的文件。

????用減號(hào)-來(lái)限定更改時(shí)間在距今n日以?xún)?nèi)的文件,而用加號(hào)+來(lái)限定更改時(shí)間在距今n日以前的

????文件。

????希望在系統(tǒng)根目錄下查找更改時(shí)間在5日以?xún)?nèi)的文件,可以用:

????$ find / -mtime -5 -print

????為了在/ v a r / a d m目錄下查找更改時(shí)間在3日以前的文件,可以用:

????$ find /var/adm -mtime +3 -print

????查找比某個(gè)文件新或舊的文件

????如果希望查找更改時(shí)間比某個(gè)文件新但比另一個(gè)文件舊的所有文件,可以使用- n e w e r選

????項(xiàng)。它的一般形式為:

????newest_file_name ! oldest_file_name

????其中,!是邏輯非符號(hào)。

????這里有兩個(gè)文件,它們的更改時(shí)間大約相差兩天。

????下面給出的f i n d命令能夠查找更改時(shí)間比文件a g e . a w k新但比文件b e l t s . a w k舊的文件:

????如果想使用f i n d命令的這一選項(xiàng)來(lái)查找更改時(shí)間在兩個(gè)小時(shí)以?xún)?nèi)的文件,除非有一個(gè)現(xiàn)成

????的文件其更改時(shí)間恰好在兩個(gè)小時(shí)以前,否則就沒(méi)有可用來(lái)比較更改時(shí)間的文件。為了解決

????這一問(wèn)題,可以首先創(chuàng)建一個(gè)文件并將其日期和時(shí)間戳設(shè)置為所需要的時(shí)間。這可以用t o u c h

????命令來(lái)實(shí)現(xiàn)。

????假設(shè)現(xiàn)在的時(shí)間是2 3 : 4 0,希望查找更改時(shí)間在兩個(gè)小時(shí)以?xún)?nèi)的文件,可以首先創(chuàng)建這樣

????一個(gè)文件:

????一個(gè)符合要求的文件已經(jīng)被創(chuàng)建;這里我們假設(shè)今天是五月四日,而該文件的更改時(shí)間

????是2 1 : 4 0,比現(xiàn)在剛好早兩個(gè)小時(shí)。

????現(xiàn)在我們就可以使用f i n d命令的- n e w e r選項(xiàng)在當(dāng)前目錄下查找所有更改時(shí)間在兩個(gè)小時(shí)以

????內(nèi)的文件:

????$ find . -newer dstamp -print

????使用type選項(xiàng)

????U N I X或L I N U X系統(tǒng)中有若干種不同的文件類(lèi)型,這部分內(nèi)容我們?cè)谇懊娴恼鹿?jié)已經(jīng)做了

????介紹,這里就不再贅述。如果要在/ e t c目錄下查找所有的目錄,可以用:

????$ find /etc -type d -print

????為了在當(dāng)前目錄下查找除目錄以外的所有類(lèi)型的文件,可以用:

????$ find . ! -type d -print

????為了在/ e t c目錄下查找所有的符號(hào)鏈接文件,可以用:

????$ find /etc -type l -print

????使用size選項(xiàng)

????可以按照文件長(zhǎng)度來(lái)查找文件,這里所指的文件長(zhǎng)度既可以用塊( b l o c k)來(lái)計(jì)量,也可

????以用字節(jié)來(lái)計(jì)量。以字節(jié)計(jì)量文件長(zhǎng)度的表達(dá)形式為N c;以塊計(jì)量文件長(zhǎng)度只用數(shù)字表示即

????可。

????就我個(gè)人而言,我總是使用以字節(jié)計(jì)的方式,在按照文件長(zhǎng)度查找文件時(shí),大多數(shù)人都

????喜歡使用這種以字節(jié)表示的文件長(zhǎng)度,而不用塊的數(shù)目來(lái)表示,除非是在查看文件系統(tǒng)的大

????小,因?yàn)檫@時(shí)使用塊來(lái)計(jì)量更容易轉(zhuǎn)換。

????為了在當(dāng)前目錄下查找文件長(zhǎng)度大于1 M字節(jié)的文件,可以用:

????$ find . -size +1000000c -print

????為了在/ h o m e / a p a c h e目錄下查找文件長(zhǎng)度恰好為1 0 0字節(jié)的文件,可以用:

????$ find /home/apache -size 100c -print

????為了在當(dāng)前目錄下查找長(zhǎng)度超過(guò)1 0塊的文件(一塊等于5 1 2字節(jié)),可以用:

????$ find . -size +10 -print

0 回復(fù) 有任何疑惑可以回復(fù)我~

-user ’字串’ 查找屬于用戶(hù)名為所給字串的所有的文件。

-empty 查找大小為 0的目錄或文件。

-path ’字串’ 查找路徑名匹配所給字串的所有文件,字串內(nèi)可用通配符*、?、[ ]。

-perm 權(quán)限 查找具有指定權(quán)限的文件和目錄,權(quán)限的表示可以如711,644。

-size n[bckw] 查找指定文件大小的文件,n 后面的字符表示單位,缺省為 b,代表512字節(jié)的塊。

-type x 查找類(lèi)型為 x 的文件,x 為下列字符之一

0 回復(fù) 有任何疑惑可以回復(fù)我~

06_szez?的筆記

文件搜索命令find
find [搜索范圍] [搜索條件]
* 匹配任意內(nèi)容
匹配任意一個(gè)字符
[] 匹配任意一個(gè)中括號(hào)內(nèi)的字符
-10 10天內(nèi)修改的文件
10 10天當(dāng)天修改的文件
+10 10天前修改的文件
atime 文件訪問(wèn)時(shí)間
ctime 改變?cè)L問(wèn)時(shí)間
mtime 修改文件內(nèi)容
find . -size 25k(查找文件大小是25KB的文件)
-25k 小于25KB的文件
25k 等于25KB的文件
+25k 大于25KB的文件
find . -inum 262422查找i節(jié)點(diǎn)是262422的文件


網(wǎng)絡(luò)資源

一、find 命令格式

1、find命令的一般形式為

find pathname -options [-print -exec -ok ...]

2、find命令的參數(shù)

pathname: find命令所查找的目錄路徑。例如用.來(lái)表示當(dāng)前目錄用/來(lái)表示系統(tǒng)根目錄。

-print find命令將匹配的文件輸出到標(biāo)準(zhǔn)輸出。

-exec find命令對(duì)匹配的文件執(zhí)行該參數(shù)所給出的shell命令。相應(yīng)命令的形式為"command { } \; "注意"{ }"和“\;”之間的空格。

-ok 和-exec的作用相同只不過(guò)以一種更為安全的模式來(lái)執(zhí)行該參數(shù)所給出的shell命令在執(zhí)行每一個(gè)命令之前都會(huì)給出提示讓用戶(hù)來(lái)確定是否執(zhí)行。

3、find命令選項(xiàng)

-name?按照文件名查找文件。

-perm?按照文件權(quán)限來(lái)查找文件。

-prune?使用這一選項(xiàng)可以使find命令不在當(dāng)前指定的目錄中查找如果同時(shí)使用-depth選項(xiàng)那么-prune將被find命令忽略。

-user?按照文件屬主來(lái)查找文件。

-group?按照文件所屬的組來(lái)查找文件。

-mtime -n +n?按照文件的更改時(shí)間來(lái)查找文件 - n表示文件更改時(shí)間距現(xiàn)在n天以?xún)?nèi)+ n表示文件更改時(shí)間距現(xiàn)在n天以前。find命令還有-atime和-ctime 選項(xiàng)但它們都和-m time選項(xiàng)。

-nogroup?查找無(wú)有效所屬組的文件即該文件所屬的組在/etc/groups中不存在。

-nouser?查找無(wú)有效屬主的文件即該文件的屬主在/etc/passwd中不存在。

-newer file1 ! file2 ?查找更改時(shí)間比文件file1新但比文件file2舊的文件。

-type?查找某一類(lèi)型的文件諸如b - 塊設(shè)備文件。d - 目錄。c - 字符設(shè)備文件。p - 管道文件。l - 符號(hào)鏈接文件。f - 普通文件。

-size n[c] 查找文件長(zhǎng)度為n塊的文件帶有c時(shí)表示文件長(zhǎng)度以字節(jié)計(jì)。

-depth在查找文件時(shí)首先查找當(dāng)前目錄中的文件然后再在其子目錄中查找。

-fstype查找位于某一類(lèi)型文件系統(tǒng)中的文件這些文件系統(tǒng)類(lèi)型通常可以在配置文件/etc/fstab中找到該配置文件中包含了本系統(tǒng)中有關(guān)文件系統(tǒng)的信息。

-mount在查找文件時(shí)不跨越文件系統(tǒng)mount點(diǎn)。

-follow如果find命令遇到符號(hào)鏈接文件就跟蹤至鏈接所指向的文件。

-cpio對(duì)匹配的文件使用cpio命令將這些文件備份到磁帶設(shè)備中。

另外,下面三個(gè)的區(qū)別:

? ?-amin n?查找系統(tǒng)中最后N分鐘訪問(wèn)的文件

 -atime n?查找系統(tǒng)中最后n*24小時(shí)訪問(wèn)的文件

 -cmin n?查找系統(tǒng)中最后N分鐘被改變文件狀態(tài)的文件

 -ctime n?查找系統(tǒng)中最后n*24小時(shí)被改變文件狀態(tài)的文件

? ?-mmin n?查找系統(tǒng)中最后N分鐘被改變文件數(shù)據(jù)的文件

 -mtime n?查找系統(tǒng)中最后n*24小時(shí)被改變文件數(shù)據(jù)的文件

4、使用exec或ok來(lái)執(zhí)行shell命令

使用find時(shí)只要把想要的操作寫(xiě)在一個(gè)文件里就可以用exec來(lái)配合find查找很方便的

在有些操作系統(tǒng)中只允許-exec選項(xiàng)執(zhí)行諸如l s或ls -l這樣的命令。大多數(shù)用戶(hù)使用這一選項(xiàng)是為了查找舊文件并刪除它們。建議在真正執(zhí)行rm命令刪除文件之前最好先用ls命令看一下確認(rèn)它們是所要?jiǎng)h除的文件。

exec選項(xiàng)后面跟隨著所要執(zhí)行的命令或腳本然后是一對(duì)兒{ }一個(gè)空格和一個(gè)最后是一個(gè)分號(hào)。為了使用exec選項(xiàng)必須要同時(shí)使用print選項(xiàng)。如果驗(yàn)證一下find命令會(huì)發(fā)現(xiàn)該命令只輸出從當(dāng)前路徑起的相對(duì)路徑及文件名。

例如為了用ls -l命令列出所匹配到的文件可以把ls -l命令放在find命令的-exec選項(xiàng)中

# find . -type f -exec ls -l { } \;

-rw-r--r-- 1 root root 34928 2003-02-25 ./conf/httpd.conf

-rw-r--r-- 1 root root 12959 2003-02-25 ./conf/magic

-rw-r--r-- 1 root root 180 2003-02-25 ./conf.d/README

上面的例子中find命令匹配到了當(dāng)前目錄下的所有普通文件并在-exec選項(xiàng)中使用ls -l命令將它們列出。

在/logs目錄中查找更改時(shí)間在5日以前的文件并刪除它們

$ find logs -type f -mtime +5 -exec rm { } \;

記住在shell中用任何方式刪除文件之前應(yīng)當(dāng)先查看相應(yīng)的文件一定要小心當(dāng)使用諸如mv或rm命令時(shí)可以使用-exec選項(xiàng)的安全模式。它將在對(duì)每個(gè)匹配到的文件進(jìn)行操作之前提示你。

在下面的例子中 find命令在當(dāng)前目錄中查找所有文件名以.LOG結(jié)尾、更改時(shí)間在5日以上的文件并刪除它們只不過(guò)在刪除之前先給出提示。

$ find . -name "*.conf" -mtime +5 -ok rm { } \;

< rm ... ./conf/httpd.conf > ? n

按y鍵刪除文件按n鍵不刪除。

任何形式的命令都可以在-exec選項(xiàng)中使用。

在下面的例子中我們使用grep命令。find命令首先匹配所有文件名為“ passwd*”的文件例如passwd、passwd.old、passwd.bak然后執(zhí)行g(shù)rep命令看看在這些文件中是否存在一個(gè)sam用戶(hù)。

# find /etc -name "passwd*" -exec grep "sam" { } \;

sam:x:501:501::/usr/sam:/bin/bash

二、find命令的例子

1、查找當(dāng)前用戶(hù)主目錄下的所有文件下面兩種方法都可以使用

$ find $HOME -print

$ find ~ -print

2、讓當(dāng)前目錄中文件屬主具有讀、寫(xiě)權(quán)限并且文件所屬組的用戶(hù)和其他用戶(hù)具有讀權(quán)限的文件

$ find . -type f -perm 644 -exec ls -l { } \;

3、為了查找系統(tǒng)中所有文件長(zhǎng)度為0的普通文件并列出它們的完整路徑

$ find / -type f -size 0 -exec ls -l { } \;

4、查找/var/logs目錄中更改時(shí)間在7日以前的普通文件并在刪除之前詢(xún)問(wèn)它們

$ find /var/logs -type f -mtime +7 -ok rm { } \;

5、為了查找系統(tǒng)中所有屬于root組的文件

$find . -group root -exec ls -l { } \;

-rw-r--r-- 1 root root 595 10月 31 01:09 ./fie1

6、find命令將刪除當(dāng)目錄中訪問(wèn)時(shí)間在7日以來(lái)、含有數(shù)字后綴的admin.log文件。

該命令只檢查三位數(shù)字所以相應(yīng)文件的后綴不要超過(guò)999。先建幾個(gè)admin.log*的文件 才能使用下面這個(gè)命令

$ find . -name "admin.log[0-9][0-9][0-9]" -atime -7 -ok

rm { } \;

< rm ... ./admin.log001 > ? n

< rm ... ./admin.log002 > ? n

< rm ... ./admin.log042 > ? n

< rm ... ./admin.log942 > ? n

7、為了查找當(dāng)前文件系統(tǒng)中的所有目錄并排序

$ find . -type d | sort

8、為了查找系統(tǒng)中所有的rmt磁帶設(shè)備

$ find /dev/rmt -print

三、find 命令的參數(shù)

下面是find一些常用參數(shù)的例子有用到的時(shí)候查查就行了像上面前幾個(gè)貼子都用到了其中的的一些參數(shù)也可以用man或查看論壇里其它貼子有find的命令手冊(cè)

1、使用name選項(xiàng)

文件名選項(xiàng)是find命令最常用的選項(xiàng)要么單獨(dú)使用該選項(xiàng)要么和其他選項(xiàng)一起使用。

可以使用某種文件名模式來(lái)匹配文件記住要用引號(hào)將文件名模式引起來(lái)。

不管當(dāng)前路徑是什么如果想要在自己的根目錄$HOME中查找文件名符合*.txt的文件使用~作為 'pathname'參數(shù)波浪號(hào)~代表了你的$HOME目錄。

$ find ~ -name "*.txt" -print

想要在當(dāng)前目錄及子目錄中查找所有的‘ *.txt’文件可以用

$ find . -name "*.txt" -print

想要的當(dāng)前目錄及子目錄中查找文件名以一個(gè)大寫(xiě)字母開(kāi)頭的文件可以用

$ find . -name "[A-Z]*" -print

想要在/etc目錄中查找文件名以host開(kāi)頭的文件可以用

$ find /etc -name "host*" -print

想要查找$HOME目錄中的文件可以用

$ find ~ -name "*" -print 或find . -print

要想讓系統(tǒng)高負(fù)荷運(yùn)行就從根目錄開(kāi)始查找所有的文件。

$ find / -name "*" -print

如果想在當(dāng)前目錄查找文件名以?xún)蓚€(gè)小寫(xiě)字母開(kāi)頭跟著是兩個(gè)數(shù)字最后是.txt的文件下面的命令就能夠返回名為ax37.txt的文件

$find . -name "[a-z][a-z][0--9][0--9].txt" -print

2、用perm選項(xiàng)

按照文件權(quán)限模式用-perm選項(xiàng),按文件權(quán)限模式來(lái)查找文件的話。最好使用八進(jìn)制的權(quán)限表示法。

如在當(dāng)前目錄下查找文件權(quán)限位為755的文件即文件屬主可以讀、寫(xiě)、執(zhí)行其他用戶(hù)可以讀、執(zhí)行的文件可以用

$ find . -perm 755 -print

還有一種表達(dá)方法在八進(jìn)制數(shù)字前面要加一個(gè)橫杠-表示都匹配如-007就相當(dāng)于777-006相當(dāng)于666

# ls -l

-rwxrwxr-x 2 sam adm 0 10月 31 01:01 http3.conf

-rw-rw-rw- 1 sam adm 34890 10月 31 00:57 httpd1.conf

-rwxrwxr-x 2 sam adm 0 10月 31 01:01 httpd.conf

drw-rw-rw- 2 gem group 4096 10月 26 19:48 sam

-rw-rw-rw- 1 root root 2792 10月 31 20:19 temp

# find . -perm 006

# find . -perm -006

./sam

./httpd1.conf

./temp

-perm mode:文件許可正好符合mode

-perm +mode:文件許可部分符合mode

-perm -mode: 文件許可完全符合mode

3、忽略某個(gè)目錄

如果在查找文件時(shí)希望忽略某個(gè)目錄因?yàn)槟阒滥莻€(gè)目錄中沒(méi)有你所要查找的文件那么可以使用-prune選項(xiàng)來(lái)指出需要忽略的目錄。在使用-prune選項(xiàng)時(shí)要當(dāng)心因?yàn)槿绻阃瑫r(shí)使用了-depth選項(xiàng)那么-prune選項(xiàng)就會(huì)被find命令忽略。

如果希望在/apps目錄下查找文件但不希望在/apps/bin目錄下查找可以用

$ find /apps -path "/apps/bin" -prune -o -print

4、使用find查找文件的時(shí)候怎么避開(kāi)某個(gè)文件目錄

比如要在/usr/sam目錄下查找不在dir1子目錄之內(nèi)的所有文件

find /usr/sam -path "/usr/sam/dir1" -prune -o -print

find [-path ..] [expression] 在路徑列表的后面的是表達(dá)式

-path "/usr/sam" -prune -o -print 是 -path "/usr/sam" -a -prune -o

-print 的簡(jiǎn)寫(xiě)表達(dá)式按順序求值, -a 和 -o 都是短路求值與 shell 的 && 和 || 類(lèi)似如果 -path "/usr/sam" 為真則求值 -prune , -prune 返回真與邏輯表達(dá)式為真否則不求值 -prune與邏輯表達(dá)式為假。如果 -path "/usr/sam" -a -prune 為假則求值 -print -print返回真或邏輯表達(dá)式為真否則不求值 -print或邏輯表達(dá)式為真。

這個(gè)表達(dá)式組合特例可以用偽碼寫(xiě)為

if -path "/usr/sam" then

? ? ? ? ? ?-prune

else

? ? ? ? ? ?-print

避開(kāi)多個(gè)文件夾

find /usr/sam \( -path /usr/sam/dir1 -o -path /usr/sam/file1 \) -prune -o -print

圓括號(hào)表示表達(dá)式的結(jié)合。

\ 表示引用即指示 shell 不對(duì)后面的字符作特殊解釋而留給 find 命令去解釋其意義。

查找某一確定文件-name等選項(xiàng)加在-o 之后

#find /usr/sam \(-path /usr/sam/dir1 -o -path /usr/sam/file1 \) -prune -o -name "temp" -print

5、使用user和nouser選項(xiàng)

按文件屬主查找文件如在$HOME目錄中查找文件屬主為sam的文件可以用

$ find ~ -user sam -print

在/etc目錄下查找文件屬主為uucp的文件

$ find /etc -user uucp -print

為了查找屬主帳戶(hù)已經(jīng)被刪除的文件可以使用-nouser選項(xiàng)。這樣就能夠找到那些屬主在/etc/passwd文件中沒(méi)有有效帳戶(hù)的文件。在使用-nouser選項(xiàng)時(shí)不必給出用戶(hù)名 find命令能夠?yàn)槟阃瓿上鄳?yīng)的工作。

例如希望在/home目錄下查找所有的這類(lèi)文件可以用

$ find /home -nouser -print

6、使用group和nogroup選項(xiàng)

就像user和nouser選項(xiàng)一樣針對(duì)文件所屬于的用戶(hù)組 find命令也具有同樣的選項(xiàng)為了在/apps目錄下查找屬于gem用戶(hù)組的文件可以用

$ find /apps -group gem -print

要查找沒(méi)有有效所屬用戶(hù)組的所有文件可以使用nogroup選項(xiàng)。下面的find命令從文件系統(tǒng)的根目錄處查找這樣的文件

$ find / -nogroup-print

7、按照更改時(shí)間或訪問(wèn)時(shí)間等查找文件

如果希望按照更改時(shí)間來(lái)查找文件可以使用mtime,atime或ctime選項(xiàng)。如果系統(tǒng)突然沒(méi)有可用空間了很有可能某一個(gè)文件的長(zhǎng)度在此期間增長(zhǎng)迅速這時(shí)就可以用mtime選項(xiàng)來(lái)查找這樣的文件。

用減號(hào)-來(lái)限定更改時(shí)間在距今n日以?xún)?nèi)的文件而用加號(hào)+來(lái)限定更改時(shí)間在距今n日以前的文件。

希望在系統(tǒng)根目錄下查找更改時(shí)間在5日以?xún)?nèi)的文件可以用

$ find / -mtime -5 -print

為了在/var/adm目錄下查找更改時(shí)間在3日以前的文件可以用

$ find /var/adm -mtime +3 -print

8、查找比某個(gè)文件新或舊的文件

如果希望查找更改時(shí)間比某個(gè)文件新但比另一個(gè)文件舊的所有文件可以使用-newer選項(xiàng)。它的一般形式為

newest_file_name ! oldest_file_name

其中是邏輯非符號(hào)。

查找更改時(shí)間比文件sam新但比文件temp舊的文件

例有兩個(gè)文件

-rw-r--r-- 1 sam adm 0 10月 31 01:07 fiel

-rw-rw-rw- 1 sam adm 34890 10月 31 00:57 httpd1.conf

-rwxrwxr-x 2 sam adm 0 10月 31 01:01 httpd.conf

drw-rw-rw- 2 gem group 4096 10月 26 19:48 sam

-rw-rw-rw- 1 root root 2792 10月 31 20:19 temp

# find -newer httpd1.conf ! -newer temp -ls

1077669 0 -rwxrwxr-x 2 sam adm 0 10月 31 01:01 ./httpd.conf

1077671 4 -rw-rw-rw- 1 root root 2792 10月 31 20:19 ./temp

1077673 0 -rw-r--r-- 1 sam adm 0 10月 31 01:07 ./fiel

查找更改時(shí)間在比temp文件新的文件

$ find . -newer temp -print

9、使用type選項(xiàng)

在/etc目錄下查找所有的目錄可以用

$ find /etc -type d -print

在當(dāng)前目錄下查找除目錄以外的所有類(lèi)型的文件可以用

$ find . ! -type d -print

在/etc目錄下查找所有的符號(hào)鏈接文件可以用

$ find /etc -type l -print

10、使用size選項(xiàng)

可以按照文件長(zhǎng)度來(lái)查找文件這里所指的文件長(zhǎng)度既可以用塊block來(lái)計(jì)量也可以用字節(jié)來(lái)計(jì)量。以字節(jié)計(jì)量文件長(zhǎng)度的表達(dá)形式為N c以塊計(jì)量文件長(zhǎng)度只用數(shù)字表示即可。

在按照文件長(zhǎng)度查找文件時(shí)一般使用這種以字節(jié)表示的文件長(zhǎng)度在查看文件系統(tǒng)的大小因?yàn)檫@時(shí)使用塊來(lái)計(jì)量更容易轉(zhuǎn)換。

在當(dāng)前目錄下查找文件長(zhǎng)度大于1 M字節(jié)的文件

$ find . -size +1000000c -print

在/home/apache目錄下查找文件長(zhǎng)度恰好為100字節(jié)的文件

$ find /home/apache -size 100c -print

在當(dāng)前目錄下查找長(zhǎng)度超過(guò)10塊的文件一塊等于512字節(jié)

$ find . -size +10 -print

11、使用depth選項(xiàng)

在使用find命令時(shí)可能希望先匹配所有的文件再在子目錄中查找。使用depth選項(xiàng)就可以使find命令這樣做。這樣做的一個(gè)原因就是當(dāng)在使用find命令向磁帶上備份文件系統(tǒng)時(shí)希望首先備份所有的文件其次再備份子目錄中的文件。

在下面的例子中 find命令從文件系統(tǒng)的根目錄開(kāi)始查找一個(gè)名為CON.FILE的文件。

它將首先匹配所有的文件然后再進(jìn)入子目錄中查找。

$ find / -name "CON.FILE" -depth -print

12、使用mount選項(xiàng)

在當(dāng)前的文件系統(tǒng)中查找文件不進(jìn)入其他文件系統(tǒng)可以使用find命令的mount選項(xiàng)。

從當(dāng)前目錄開(kāi)始查找位于本文件系統(tǒng)中文件名以XC結(jié)尾的文件

$ find . -name "*.XC" -mount -print

norma Netp< @g: normal; orphans: auto; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(255, 255, 255);">在當(dāng)前目錄下查找文件長(zhǎng)度大于1 M字節(jié)的文件$ find . -size +1000000c -print在/home/apache目錄下查找文件長(zhǎng)度恰好為100字節(jié)的文件$ find /home/apache -size 100c -print在當(dāng)前目錄下查找長(zhǎng)度超過(guò)10塊的文件一塊等于512字節(jié)$ find . -size +10 -print11、使用depth選項(xiàng)在使用find命令時(shí)可能希望先匹配所有的文件再在子目錄中查找。使用depth選項(xiàng)就可以使find命令這樣做。這樣做的一個(gè)原因就是當(dāng)在使用find命令向磁帶上備份文件系統(tǒng)時(shí)希望首先備份所有的文件其次再備份子目錄中的文件。在下面的例子中 find命令從文件系統(tǒng)的根目錄開(kāi)始查找一個(gè)名為CON.FILE的文件。它將首先匹配所有的文件然后再進(jìn)入子目錄中查找。$ find / -name "CON.FILE" -depth -print12、使用mount選項(xiàng)在當(dāng)前的文件系統(tǒng)中查找文件不進(jìn)入其他文件系統(tǒng)可以使用find命令的mount選項(xiàng)。從當(dāng)前目錄開(kāi)始查找位于本文件系統(tǒng)中文件名以XC結(jié)尾的文件$ find . -name "*.XC" -mount -print


0 回復(fù) 有任何疑惑可以回復(fù)我~


-user username?? ??? ?#按文件屬主來(lái)查找
-group groupname?? ?#按組來(lái)查找
-mtime -n +n?? ??? ?#按文件更改時(shí)間來(lái)查找文件,-n指n天以?xún)?nèi),+n指n天以前
-atime -n +n?? ??? ?#按文件訪問(wèn)時(shí)間來(lái)查GIN: 0px">-perm #按執(zhí)行權(quán)限來(lái)查找
-ctime -n +n?? ??? ?#按文件創(chuàng)建時(shí)間來(lái)查找文件,-n指n天以?xún)?nèi),+n指n天以前
-nogroup?? ??? ?#查無(wú)有效屬組的文件,即文件的屬組在/etc/groups中不存在
-nouser?? ??? ??? ?#查無(wú)有效屬主的文件,即文件的屬主在/etc/passwd中不存在
-newer f1 !f2?? ??? ?#查更改時(shí)間比f(wàn)1新但比f(wàn)2舊的文件
-type b/d/c/p/l/f?? ?#查是塊設(shè)備、目錄、字符設(shè)備、管道、符號(hào)鏈接、普通文件
$find . -type d -print #在當(dāng)前目錄下查找目錄文件
$find . ! -type d -print #在當(dāng)前目錄下查找非目錄文件
$find . -type l -print #在當(dāng)前目錄下查找符號(hào)鏈接文件

-size n[c]?? ??? ?#查長(zhǎng)度為n塊[或n字節(jié)]的文件
$find . -size +1000000c -print #在當(dāng)前目錄下查長(zhǎng)度大于1Mb的文件
$find . -size 100c -print #在當(dāng)前目錄下查長(zhǎng)度為100c的文件
$find . -size +10 -print #在當(dāng)前目錄下查長(zhǎng)度超過(guò)10塊的文件(1塊=512字節(jié))

-depth?? ??? ??? ?#使查找在進(jìn)入子目錄前先行查找完本目錄(廣度優(yōu)先)
-mount?? ??? ??? ?#查文件時(shí)不跨越文件系統(tǒng)mount點(diǎn)
-follow?? ??? ??? ?#如果遇到符號(hào)鏈接文件,就跟蹤鏈接所指的文件
-cpio?? ??? ??? ?#對(duì)匹配的文件使用cpio命令,將他們備份到磁帶設(shè)備中
-prune?? ??? ??? ?#忽略某個(gè)目錄

0 回復(fù) 有任何疑惑可以回復(fù)我~

find \(–name ’tmp’ –xtype c -user ’inin’ \)

我覺(jué)的現(xiàn)在我應(yīng)該說(shuō)下出了查詢(xún)條件,在find中的option的內(nèi)容了:

在option中,具體有參數(shù):

-name ’字串’ 查找文件名匹配所給字串的所有文件,字串內(nèi)可用通配符 *、?、[ ]。

-lname ’字串’ 查找文件名匹配所給字串的所有符號(hào)鏈接文件,字串內(nèi)可用通配符 *、?、[ ]。

-gid n 查找屬于ID號(hào)為 n 的用戶(hù)組的所有文件。

-uid n 查找屬于ID號(hào)為 n 的用戶(hù)的所有文件。

-group ’字串’ 查找屬于用戶(hù)組名為所給字串的所有的文件。

-user ’字串’ 查找屬于用戶(hù)名為所給字串的所有的文件。

-empty 查找大小為 0的目錄或文件。

-path ’字串’ 查找路徑名匹配所給字串的所有文件,字串內(nèi)可用通配符*、?、[ ]。

-perm 權(quán)限 查找具有指定權(quán)限的文件和目錄,權(quán)限的表示可以如711,644。

-size n[bckw] 查找指定文件大小的文件,n 后面的字符表示單位,缺省為 b,代表512字節(jié)的塊。

-type x 查找類(lèi)型為 x 的文件,x 為下列字符之一:

b 塊設(shè)備文件

c 字符設(shè)備文件

d 目錄文件

p 命名管道(FIFO)

f 普通文件

l 符號(hào)鏈接文件(symbolic links)

s socket文件

-xtype x 與 -type 基本相同,但只查找符號(hào)鏈接文件。

以時(shí)間為條件查找

-amin n 查找n分鐘以前被訪問(wèn)過(guò)的所有文件。

-atime n 查找n天以前被訪問(wèn)過(guò)的所有文件。

-cmin n 查找n分鐘以前文件狀態(tài)被修改過(guò)的所有文件。

-ctime n 查找n天以前文件狀態(tài)被修改過(guò)的所有文件。

-mmin n 查找n分鐘以前文件內(nèi)容被修改過(guò)的所有文件。

-mtime n 查找n天以前文件內(nèi)容被修改過(guò)的所有文件。

-print:將搜索結(jié)果輸出到標(biāo)準(zhǔn)輸出。

0 回復(fù) 有任何疑惑可以回復(fù)我~

一、Linux中find常見(jiàn)用法示例

·find ?? path??? -option??? [??? -print ]??? [ -exec??? -ok??? command ]??? {} \;
#-print 將查找到的文件輸出到標(biāo)準(zhǔn)輸出
#-exec??? command??? {} \;?????? -----將查到的文件執(zhí)行command操作,{} 和 \;之間有空格
#-ok 和-exec相同,只不過(guò)在操作前要詢(xún)用戶(hù) ==================================================== -name??? filename?????????????? #查找名為filename的文件
-perm???????????????????????? #按執(zhí)行權(quán)限來(lái)查找
-user???? username????????????? #按文件屬主來(lái)查找
-group groupname????????????? #按組來(lái)查找
-mtime??? -n +n???????????????? #按文件更改時(shí)間來(lái)查找文件,-n指n天以?xún)?nèi),+n指n天以前
-atime???? -n +n??????????????? #按文件訪問(wèn)時(shí)間來(lái)查GIN: 0px">-perm????????????????????????? #按執(zhí)行權(quán)限來(lái)查找
-user???? username????????????? #按文件屬主來(lái)查找
-group groupname????????????? #按組來(lái)查找
-mtime??? -n +n???????????????? #按文件更改時(shí)間來(lái)查找文件,-n指n天以?xún)?nèi),+n指n天以前
-atime???? -n +n??????????????? #按文件訪問(wèn)時(shí)間來(lái)查找文件,-n指n天以?xún)?nèi),+n指n天以前
-ctime???? -n +n??????????????? #按文件創(chuàng)建時(shí)間來(lái)查找文件,-n指n天以?xún)?nèi),+n指n天以前
-nogroup????????????????????? #查無(wú)有效屬組的文件,即文件的屬組在/etc/groups中不存在
-nouser?????????????????????? #查無(wú)有效屬主的文件,即文件的屬主在/etc/passwd中不存
-newer??? f1 !f2??????????????? 找文件,-n指n天以?xún)?nèi),+n指n天以前
-ctime???? -n +n??????????????? #按文件創(chuàng)建時(shí)間來(lái)查找文件,-n指n天以?xún)?nèi),+n指n天以前
-nogroup????????????????????? #查無(wú)有效屬組的文件,即文件的屬組在/etc/groups中不存在
-nouser?????????????????????? #查無(wú)有效屬主的文件,即文件的屬主在/etc/passwd中不存
-newer??? f1 !f2??????????????? #查更改時(shí)間比f(wàn)1新但比f(wàn)2舊的文件
-type????? b/d/c/p/l/f????????? #查是塊設(shè)備、目錄、字符設(shè)備、管道、符號(hào)鏈接、普通文件
-size?????? n[c]??????????????? #查長(zhǎng)度為n塊[或n字節(jié)]的文件
-depth??????????????????????? #使查找在進(jìn)入子目錄前先行查找完本目錄
-fstype?????????????????????? #查更改時(shí)間比f(wàn)1新但比f(wàn)2舊的文件
-mount??????????????????????? #查文件時(shí)不跨越文件系統(tǒng)mount點(diǎn)
-follow?????????????????????? #如果遇到符號(hào)鏈接文件,就跟蹤鏈接所指的文件
-cpio???????????????????????? #對(duì)匹配的文件使用cpio命令,將他們備份到磁帶設(shè)備中
-prune??????????????????????? #忽略某個(gè)目錄 ====================================================
$find??? ~??? -name??? "*.txt"??? -print????? #在$HOME中查.txt文件并顯示
$find??? .???? -name??? "*.txt"??? -print
$find??? .???? -name??? "[A-Z]*"??? -pri26nbsp;???? #對(duì)匹配的文件使用cpio命令,將他們備份到磁帶設(shè)備中
-prune??????????????????????????????? #忽略某個(gè)目錄 $find??? .???? -name??? "[A-Z]*"??? -print??? #查以大寫(xiě)字母開(kāi)頭的文件
$find??? /etc??? -name??? "host*"??? -print #查以host開(kāi)頭的文件
$find??? .??? -name??? "[a-z][a-z][0--9][0--9].txt"???? -print??? #查以?xún)蓚€(gè)小寫(xiě)字母和兩個(gè)數(shù)字開(kāi)頭的txt文件
$find .??? -perm??? 755??? -print
$find??? .??? -perm -007??? -exec ls -l {} \;??? #查所有用戶(hù)都可讀寫(xiě)執(zhí)行的文件同-perm 777
$find??? . -type d??? -print?? 打印目錄結(jié)構(gòu)
$find??? .?? !??? -type??? d??? -print??打印非目錄文件 find /usr/include -name '*.h' -exec grep AF_INEF6 {} \; 因grep無(wú)法遞歸搜索子目錄,故可以和find相結(jié)合使用。 在/usr/include 所有子目錄中的.h文件中找字串AF_INEF6
$find??? .??? -type l??? -print $find??? .??? -size??? +1000000c??? -print???????? #查長(zhǎng)度大于1Mb的文件
$find??? .??? -size??? 100c????????? -print??????? # 查長(zhǎng)度為100c的文件
$find??? .??? -size??? +10??? -print?????????????? #查長(zhǎng)度超過(guò)期作廢10塊的文件(1塊=512字節(jié)) $cd /
$find??? etc??? home??? apps???? -depth??? -print??? | cpio??? -ivcdC65536??? -o??? /dev/rmt0
$find??? /etc -name "passwd*"??? -exec grep??? "cnscn"??? {}??? \;??? #看是否存在cnscn用戶(hù)
$find . -name "yao*"??? | xargs file
$find??? . -name "yao*"??? |??? xargs??? echo???? "" > /tmp/core.log
$find??? . -name "yao*"??? | xargs??? chmod??? o-w ====================================================== find??? -name april*??????????????????????? 在當(dāng)前目錄下查找以april開(kāi)始的文件
find??? -name??? april*??? fprint file????????? 在當(dāng)前目錄下查找以april開(kāi)始的文件,并把結(jié)果輸出到file中
find??? -name ap* -o -name may*??? 查找以ap或may開(kāi)頭的文件
find??? /mnt??? -name tom.txt??? -ftype vfat??? 在/mnt下查找名稱(chēng)為tom.txt且文件系統(tǒng)類(lèi)型為vfat的文件
find??? /mnt??? -name t.txt ! -ftype vfat???? 在/mnt下查找名稱(chēng)為tom.txt且文件系統(tǒng)類(lèi)型不為vfat的文件
find??? /tmp??? -name wa* -type l???????????? 在/tmp下查找名為wa開(kāi)頭且類(lèi)型為符號(hào)鏈接的文件
find??? /home??? -mtime??? -2?????????????????? 在/home下查最近兩天內(nèi)改動(dòng)過(guò)的文件
find /home???? -atime -1??????????????????? 查1天之內(nèi)被存取過(guò)的文件
find /home -mmin???? +60??????????????????? 在/home下查60分鐘前改動(dòng)過(guò)的文件
find /home??? -amin??? +30??????????????????? 查最近30分鐘前被存取過(guò)的文件
find /home??? -newer??? tmp.txt?????????????? 在/home下查更新時(shí)間比tmp.txt近的文件或目錄
find /home??? -anewer??? tmp.txt????????????? 在/home下查存取時(shí)間比tmp.txt近的文件或目錄
find??? /home??? -used??? -2??????????????????? 列出文件或目錄被改動(dòng)過(guò)之后,在2日內(nèi)被存取過(guò)的文件或目錄
find??? /home??? -user cnscn????????????????? 列出/home目錄內(nèi)屬于用戶(hù)cnscn的文件或目錄
find??? /home??? -uid??? +501?????????????????? 列出/home目錄內(nèi)用戶(hù)的識(shí)別碼大于501的文件或目錄
find??? /home??? -group??? cnscn??????????????? 列出/home內(nèi)組為cnscn的文件或目錄
find??? /home??? -gid 501???????????????????? 列出/home內(nèi)組id為501的文件或目錄
find??? /home??? -nouser????????????????????? 列出/home內(nèi)不屬于本地用戶(hù)的文件或目錄
find??? /home??? -nogroup???????????????????? 列出/home內(nèi)不屬于本地組的文件或目錄
find??? /home???? -name tmp.txt???? -maxdepth??? 4??? 列出/home內(nèi)的tmp.txt 查時(shí)深度最多為3層
find??? /home??? -name tmp.txt??? -mindepth??? 3??? 從第2層開(kāi)始查
find??? /home??? -empty?????????????????????? 查找大小為0的文件或空目錄
find??? /home??? -size??? +512k???????????????? 查大于512k的文件
find??? /home??? -size??? -512k???????????????? 查小于512k的文件
find??? /home??? -links??? +2?????????????????? 查硬連接數(shù)大于2的文件或目錄
find??? /home??? -perm??? 0700????????????????? 查權(quán)限為700的文件或目錄
find??? /tmp??? -name tmp.txt??? -exec cat {} \;
find??? /tmp??? -name??? tmp.txt??? -ok??? rm {} \; find???? /??? -amin???? -10???????? # 查找在系統(tǒng)中最后10分鐘訪問(wèn)的文件
find???? /??? -atime??? -2?????????? # 查找在系統(tǒng)中最后48小時(shí)訪問(wèn)的文件
find???? /??? -empty??????????????? # 查找在系統(tǒng)中為空的文件或者文件夾
find???? /??? -group??? cat????????? # 查找在系統(tǒng)中屬于 groupcat的文件
find???? /??? -mmin??? -5?????????? # 查找在系統(tǒng)中最后5分鐘里修改過(guò)的文件
find???? /??? -mtime??? -1????????? #查找在系統(tǒng)中最后24小時(shí)里修改過(guò)的文件
find???? /??? -nouser?????????????? #查找在系統(tǒng)中屬于作廢用戶(hù)的文件
find???? /??? -user???? fred???????? #查找在系統(tǒng)中屬于FRED這個(gè)用戶(hù)的文件

0 回復(fù) 有任何疑惑可以回復(fù)我~

1.命令格式:

find pathname -options [-print -exec -ok ...]

2.命令功能:

用于在文件樹(shù)種查找文件,并作出相應(yīng)的處理

3.命令參數(shù):

pathname: find命令所查找的目錄路徑。例如用.來(lái)表示當(dāng)前目錄,用/來(lái)表示系統(tǒng)根目錄。
-print: find命令將匹配的文件輸出到標(biāo)準(zhǔn)輸出。
-exec: find命令對(duì)匹配的文件執(zhí)行該參數(shù)所給出的shell命令。相應(yīng)命令的形式為'command' {? } \;,注意{?? }和\;之間的空格。
-ok: 和-exec的作用相同,只不過(guò)以一種更為安全的模式來(lái)執(zhí)行該參數(shù)所給出的shell命令,在執(zhí)行每一個(gè)命令之前,都會(huì)給出提示,讓用戶(hù)來(lái)確定是否執(zhí)行。

4.命令選項(xiàng):

-name?? 按照文件名查找文件。
-perm?? 按照文件權(quán)限來(lái)查找文件。
-prune? 使用這一選項(xiàng)可以使find命令不在當(dāng)前指定的目錄中查找,如果同時(shí)使用-depth選項(xiàng),那么-prune將被find命令忽略。
-user?? 按照文件屬主來(lái)查找文件。
-group? 按照文件所屬的組來(lái)查找文件。
-mtime -n +n? 按照文件的更改時(shí)間來(lái)查找文件, - n表示文件更改時(shí)間距現(xiàn)在n天以?xún)?nèi),+ n表示文件更改時(shí)間距現(xiàn)在n天以前。find命令還有-atime和-ctime 選項(xiàng),但它們都和-m time選項(xiàng)。
-nogroup? 查找無(wú)有效所屬組的文件,即該文件所屬的組在/etc/groups中不存在。
-nouser?? 查找無(wú)有效屬主的文件,即該文件的屬主在/etc/passwd中不存在。
-newer file1 ! file2? 查找更改時(shí)間比文件file1新但比文件file2舊的文件。
-type? 查找某一類(lèi)型的文件,諸如:
b - 塊設(shè)備文件。
d - 目錄。
c - 字符設(shè)備文件。
p - 管道文件。
l - 符號(hào)鏈接文件。
f - 普通文件。
-size n:[c] 查找文件長(zhǎng)度為n塊的文件,帶有c時(shí)表示文件長(zhǎng)度以字節(jié)計(jì)。-depth:在查找文件時(shí),首先查找當(dāng)前目錄中的文件,然后再在其子目錄中查找。
-fstype:查找位于某一類(lèi)型文件系統(tǒng)中的文件,這些文件系統(tǒng)類(lèi)型通常可以在配置文件/etc/fstab中找到,該配置文件中包含了本系統(tǒng)中有關(guān)文件系統(tǒng)的信息。
-mount:在查找文件時(shí)不跨越文件系統(tǒng)mount點(diǎn)。
-follow:如果find命令遇到符號(hào)鏈接文件,就跟蹤至鏈接所指向的文件。
-cpio:對(duì)匹配的文件使用cpio命令,將這些文件備份到磁帶設(shè)備中。

0 回復(fù) 有任何疑惑可以回復(fù)我~

find :在需要添加通配符的時(shí)候需要將文件名雙引號(hào)勾選。

通配符有

??任意一個(gè)字符?

*?? 所有的

[]? 任意括號(hào)內(nèi)的字符

0 回復(fù) 有任何疑惑可以回復(fù)我~

-name??? filename?????????????? #查找名為filename的文件
-perm???????????????????????? #按執(zhí)行權(quán)限來(lái)查找
-user???? username????????????? #按文件屬主來(lái)查找
-group groupname????????????? #按組來(lái)查找
-mtime??? -n +n???????????????? #按文件更改時(shí)間來(lái)查找文件,-n指n天以?xún)?nèi),+n指n天以前
-atime???? -n +n??????????????? #按文件訪問(wèn)時(shí)間來(lái)查GIN: 0px">-perm????????????????????????? #按執(zhí)行權(quán)限來(lái)查找
-user???? username????????????? #按文件屬主來(lái)查找
-group groupname????????????? #按組來(lái)查找
-mtime??? -n +n???????????????? #按文件更改時(shí)間來(lái)查找文件,-n指n天以?xún)?nèi),+n指n天以前
-atime???? -n +n??????????????? #按文件訪問(wèn)時(shí)間來(lái)查找文件,-n指n天以?xún)?nèi),+n指n天以前
-ctime???? -n +n??????????????? #按文件創(chuàng)建時(shí)間來(lái)查找文件,-n指n天以?xún)?nèi),+n指n天以前
-nogroup????????????????????? #查無(wú)有效屬組的文件,即文件的屬組在/etc/groups中不存在
-nouser?????????????????????? #查無(wú)有效屬主的文件,即文件的屬主在/etc/passwd中不存
-newer??? f1 !f2??????????????? 找文件,-n指n天以?xún)?nèi),+n指n天以前
-ctime???? -n +n??????????????? #按文件創(chuàng)建時(shí)間來(lái)查找文件,-n指n天以?xún)?nèi),+n指n天以前
-nogroup????????????????????? #查無(wú)有效屬組的文件,即文件的屬組在/etc/groups中不存在
-nouser?????????????????????? #查無(wú)有效屬主的文件,即文件的屬主在/etc/passwd中不存
-newer??? f1 !f2??????????????? #查更改時(shí)間比f(wàn)1新但比f(wàn)2舊的文件
-type????? b/d/c/p/l/f????????? #查是塊設(shè)備、目錄、字符設(shè)備、管道、符號(hào)鏈接、普通文件
-size?????? n[c]??????????????? #查長(zhǎng)度為n塊[或n字節(jié)]的文件
-depth??????????????????????? #使查找在進(jìn)入子目錄前先行查找完本目錄
-fstype?????????????????????? #查更改時(shí)間比f(wàn)1新但比f(wàn)2舊的文件
-mount??????????????????????? #查文件時(shí)不跨越文件系統(tǒng)mount點(diǎn)
-follow?????????????????????? #如果遇到符號(hào)鏈接文件,就跟蹤鏈接所指的文件
-cpio???????????????????????? #對(duì)匹配的文件使用cpio命令,將他們備份到磁帶設(shè)備中
-prune??????????????????????? #忽略某個(gè)目錄

0 回復(fù) 有任何疑惑可以回復(fù)我~
首頁(yè)上一頁(yè)123下一頁(yè)尾頁(yè)

舉報(bào)

0/150
提交
取消

01.自行查找資料, 對(duì)find命令進(jìn)行擴(kuò)充學(xué)習(xí),并做筆記.[SZEZ]

我要回答 關(guān)注問(wèn)題
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢(xún)優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)