六月丁香五月婷婷,丁香五月婷婷网,欧美激情网站,日本护士xxxx,禁止18岁天天操夜夜操,18岁禁止1000免费,国产福利无码一区色费

學(xué)習(xí)啦 > 學(xué)習(xí)電腦 > 操作系統(tǒng) > Linux教程 > liunx find(文件查找)命令的介紹

liunx find(文件查找)命令的介紹

時間: 志藝942 分享

liunx find(文件查找)命令的介紹

  find命令用來在指定目錄下查找文件。任何位于參數(shù)之前的字符串都將被視為欲查找的目錄名。如果使用該命令時,不設(shè)置任何參數(shù),則find命令將在當(dāng)前目錄下查找子目錄與文件。并且將查找到的子目錄和文件全部進行顯示。接下來是小編為大家收集的liunx find(文件查找)命令的介紹,歡迎大家閱讀:

  liunx find(文件查找)命令的介紹

  語法

  find(選項)(參數(shù))

  選項

  -amin<分鐘>:查找在指定時間曾被存取過的文件或目錄,單位以分鐘計算;

  -anewer<參考文件或目錄>:查找其存取時間較指定文件或目錄的存取時間更接近現(xiàn)在的文件或目錄;

  -atime<24小時數(shù)>:查找在指定時間曾被存取過的文件或目錄,單位以24小時計算;

  -cmin<分鐘>:查找在指定時間之時被更改過的文件或目錄;

  -cnewer<參考文件或目錄>查找其更改時間較指定文件或目錄的更改時間更接近現(xiàn)在的文件或目錄;

  -ctime<24小時數(shù)>:查找在指定時間之時被更改的文件或目錄,單位以24小時計算;

  -daystart:從本日開始計算時間;

  -depth:從指定目錄下最深層的子目錄開始查找;

  -expty:尋找文件大小為0 Byte的文件,或目錄下沒有任何子目錄或文件的空目錄;

  -exec<執(zhí)行指令>:假設(shè)find指令的回傳值為True,就執(zhí)行該指令;

  -false:將find指令的回傳值皆設(shè)為False;

  -fls<列表文件>:此參數(shù)的效果和指定“-ls”參數(shù)類似,但會把結(jié)果保存為指定的列表文件;

  -follow:排除符號連接;

  -fprint<列表文件>:此參數(shù)的效果和指定“-print”參數(shù)類似,但會把結(jié)果保存成指定的列表文件;

  -fprint0<列表文件>:此參數(shù)的效果和指定“-print0”參數(shù)類似,但會把結(jié)果保存成指定的列表文件;

  -fprintf<列表文件><輸出格式>:此參數(shù)的效果和指定“-printf”參數(shù)類似,但會把結(jié)果保存成指定的列表文件;

  -fstype<文件系統(tǒng)類型>:只尋找該文件系統(tǒng)類型下的文件或目錄;

  -gid<群組識別碼>:查找符合指定之群組識別碼的文件或目錄;

  -group<群組名稱>:查找符合指定之群組名稱的文件或目錄;

  -help或——help:在線幫助;

  -ilname<范本樣式>:此參數(shù)的效果和指定“-lname”參數(shù)類似,但忽略字符大小寫的差別;

  -iname<范本樣式>:此參數(shù)的效果和指定“-name”參數(shù)類似,但忽略字符大小寫的差別;

  -inum:查找符合指定的inode編號的文件或目錄;

  -ipath<范本樣式>:此參數(shù)的效果和指定“-path”參數(shù)類似,但忽略字符大小寫的差別;

  -iregex<范本樣式>:此參數(shù)的效果和指定“-regexe”參數(shù)類似,但忽略字符大小寫的差別;

  -links<連接數(shù)目>:查找符合指定的硬連接數(shù)目的文件或目錄;

  -iname<范本樣式>:指定字符串作為尋找符號連接的范本樣式;

  -ls:假設(shè)find指令的回傳值為Ture,就將文件或目錄名稱列出到標(biāo)準(zhǔn)輸出;

  -maxdepth<目錄層級>:設(shè)置最大目錄層級;

  -mindepth<目錄層級>:設(shè)置最小目錄層級;

  -mmin<分鐘>:查找在指定時間曾被更改過的文件或目錄,單位以分鐘計算;

  -mount:此參數(shù)的效果和指定“-xdev”相同;

  -mtime<24小時數(shù)>:查找在指定時間曾被更改過的文件或目錄,單位以24小時計算;

  -name<范本樣式>:指定字符串作為尋找文件或目錄的范本樣式;

  -newer<參考文件或目錄>:查找其更改時間較指定文件或目錄的更改時間更接近現(xiàn)在的文件或目錄;

  -nogroup:找出不屬于本地主機群組識別碼的文件或目錄;

  -noleaf:不去考慮目錄至少需擁有兩個硬連接存在;

  -nouser:找出不屬于本地主機用戶識別碼的文件或目錄;

  -ok<執(zhí)行指令>:此參數(shù)的效果和指定“-exec”類似,但在執(zhí)行指令之前會先詢問用戶,若回答“y”或“Y”,則放棄執(zhí)行命令;

  -path<范本樣式>:指定字符串作為尋找目錄的范本樣式;

  -perm<權(quán)限數(shù)值>:查找符合指定的權(quán)限數(shù)值的文件或目錄;

  -print:假設(shè)find指令的回傳值為Ture,就將文件或目錄名稱列出到標(biāo)準(zhǔn)輸出。格式為每列一個名稱,每個名稱前皆有“./”字符串;

  -print0:假設(shè)find指令的回傳值為Ture,就將文件或目錄名稱列出到標(biāo)準(zhǔn)輸出。格式為全部的名稱皆在同一行;

  -printf<輸出格式>:假設(shè)find指令的回傳值為Ture,就將文件或目錄名稱列出到標(biāo)準(zhǔn)輸出。格式可以自行指定;

  -prune:不尋找字符串作為尋找文件或目錄的范本樣式;

  -regex<范本樣式>:指定字符串作為尋找文件或目錄的范本樣式;

  -size<文件大小>:查找符合指定的文件大小的文件;

  -true:將find指令的回傳值皆設(shè)為True;

  -typ<文件類型>:只尋找符合指定的文件類型的文件;

  -uid<用戶識別碼>:查找符合指定的用戶識別碼的文件或目錄;

  -used<日數(shù)>:查找文件或目錄被更改之后在指定時間曾被存取過的文件或目錄,單位以日計算;

  -user<擁有者名稱>:查找符和指定的擁有者名稱的文件或目錄;

  -version或——version:顯示版本信息;

  -xdev:將范圍局限在先行的文件系統(tǒng)中;

  -xtype<文件類型>:此參數(shù)的效果和指定“-type”參數(shù)類似,差別在于它針對符號連接檢查。

  參數(shù)

  起始目錄:查找文件的起始目錄。

  實例

  根據(jù)文件或者正則表達式進行匹配

  列出當(dāng)前目錄及子目錄下所有文件和文件夾

  find .

  在/home目錄下查找以.txt結(jié)尾的文件名

  find /home -name "*.txt"

  同上,但忽略大小寫

  find /home -iname "*.txt"

  當(dāng)前目錄及子目錄下查找所有以.txt和.pdf結(jié)尾的文件

  find . \( -name "*.txt" -o -name "*.pdf" \)

  或

  find . -name "*.txt" -o -name "*.pdf"

  匹配文件路徑或者文件

  find /usr/ -path "*local*"

  基于正則表達式匹配文件路徑

  find . -regex ".*\(\.txt\|\.pdf\)$"

  同上,但忽略大小寫

  find . -iregex ".*\(\.txt\|\.pdf\)$"

  否定參數(shù)

  找出/home下不是以.txt結(jié)尾的文件

  find /home ! -name "*.txt"

  根據(jù)文件類型進行搜索

  find . -type 類型參數(shù)

  類型參數(shù)列表:

  f 普通文件

  l 符號連接

  d 目錄

  c 字符設(shè)備

  b 塊設(shè)備

  s 套接字

  p Fifo

  基于目錄深度搜索

  向下最大深度限制為3

  find . -maxdepth 3 -type f

  搜索出深度距離當(dāng)前目錄至少2個子目錄的所有文件

  find . -mindepth 2 -type f

  根據(jù)文件時間戳進行搜索

  find . -type f 時間戳

  UNIX/Linux文件系統(tǒng)每個文件都有三種時間戳:

  訪問時間(-atime/天,-amin/分鐘):用戶最近一次訪問時間。

  修改時間(-mtime/天,-mmin/分鐘):文件最后一次修改時間。

  變化時間(-ctime/天,-cmin/分鐘):文件數(shù)據(jù)元(例如權(quán)限等)最后一次修改時間。

  搜索最近七天內(nèi)被訪問過的所有文件

  find . -type f -atime -7

  搜索恰好在七天前被訪問過的所有文件

  find . -type f -atime 7

  搜索超過七天內(nèi)被訪問過的所有文件

  find . -type f -atime +7

  搜索訪問時間超過10分鐘的所有文件

  find . -type f -amin +10

  找出比file.log修改時間更長的所有文件

  find . -type f -newer file.log

  根據(jù)文件大小進行匹配

  find . -type f -size 文件大小單元

  文件大小單元:

  b —— 塊(512字節(jié))

  c —— 字節(jié)

  w —— 字(2字節(jié))

  k —— 千字節(jié)

  M —— 兆字節(jié)

  G —— 吉字節(jié)

  搜索大于10KB的文件

  find . -type f -size +10k

  搜索小于10KB的文件

  find . -type f -size -10k

  搜索等于10KB的文件

  find . -type f -size 10k

  刪除匹配文件

  刪除當(dāng)前目錄下所有.txt文件

  find . -type f -name "*.txt" -delete

  根據(jù)文件權(quán)限/所有權(quán)進行匹配

  當(dāng)前目錄下搜索出權(quán)限為777的文件

  find . -type f -perm 777

  找出當(dāng)前目錄下權(quán)限不是644的php文件

  find . -type f -name "*.php" ! -perm 644

  找出當(dāng)前目錄用戶tom擁有的所有文件

  find . -type f -user tom

  找出當(dāng)前目錄用戶組sunk擁有的所有文件

  find . -type f -group sunk

  借助-exec選項與其他命令結(jié)合使用

  找出當(dāng)前目錄下所有root的文件,并把所有權(quán)更改為用戶tom

  find .-type f -user root -exec chown tom {} \;

  上例中,{} 用于與-exec選項結(jié)合使用來匹配所有文件,然后會被替換為相應(yīng)的文件名。

  找出自己家目錄下所有的.txt文件并刪除

  find $HOME/. -name "*.txt" -ok rm {} \;

  上例中,-ok和-exec行為一樣,不過它會給出提示,是否執(zhí)行相應(yīng)的操作。

  查找當(dāng)前目錄下所有.txt文件并把他們拼接起來寫入到all.txt文件中

  find . -type f -name "*.txt" -exec cat {} \;> all.txt

  將30天前的.log文件移動到old目錄中

  find . -type f -mtime +30 -name "*.log" -exec cp {} old \;

  找出當(dāng)前目錄下所有.txt文件并以“File:文件名”的形式打印出來

  find . -type f -name "*.txt" -exec printf "File: %s\n" {} \;

  因為單行命令中-exec參數(shù)中無法使用多個命令,以下方法可以實現(xiàn)在-exec之后接受多條命令

  -exec ./text.sh {} \;

  搜索但跳出指定的目錄

  查找當(dāng)前目錄或者子目錄下所有.txt文件,但是跳過子目錄sk

  find . -path "./sk" -prune -o -name "*.txt" -print

  find其他技巧收集

  要列出所有長度為零的文件

  find . -empty

  
看了“liunx find(文件查找)命令的介紹”還想看:

1.linux下find(文件查找)命令的用法總結(jié)

2.Linux find命令常見用法匯總

3.Linux中如何使用find命令進行日志定期轉(zhuǎn)移

4.Linux find命令與xargs組合使用

3086596