Linux中的find grep命令

2021-06-20 04:30:36 字數 1905 閱讀 6493

在linux下面工作,有些命令能夠大大提高效率。本文就向大家介紹find、grep命令,他哥倆可以算是必會的linux命令,我幾乎每天都要用到他們。本文結構如下:

grep命令

find ./ -size 0 -exec rm {} \; 刪除檔案大小為零的檔案 (還可以以這樣做:rm -i `find ./ -size 0`  或 find ./ -size 0 | xargs rm -f &) 

為了用ls -l命令列出所匹配到的檔案,可以把ls -l命令放在find命令的-exec選項中:find . -type f -exec ls -l \; 

在/logs目錄中查詢更改時間在5日以前的檔案並刪除它們:find /logs -type f -mtime +5 -exec rm \;

find . -name "*.conf"  -mtime +5 -ok rm \; 在當前目錄中查詢所有檔名以.log結尾、更改時間在5日以上的檔案,並刪除它們,只不過在刪除之前先給出提示

也有人這樣總結find命令的結構:

find start_directory test 

options

criteria_to_match

action_to_perform_on_results

1.2、find命令的常用選項及例項

按照檔名查詢檔案。 

find /dir -name filename  在/dir目錄及其子目錄下面查詢名字為filename的檔案 

find . -name "*.c" 在當前目錄及其子目錄(用「.」表示)中查詢任何擴充套件名為「c」的檔案

按照檔案許可權來查詢檔案。 

find . -perm 755 –print 在當前目錄下查詢檔案許可權位為755的檔案,即檔案屬主可以讀、寫、執行,其他使用者可以讀、執行的檔案

按照檔案屬主來查詢檔案。 

find ~ -user sam –print 在$home目錄中查詢檔案屬主為sam的檔案

按照檔案的更改時間來查詢檔案, - n表示檔案更改時間距現在n天以內,+ n表示檔案更改時間距現在n天以前。 

find / -mtime -5 –print 在系統根目錄下查詢更改時間在5日以內的檔案 

find /var/adm -mtime +3 –print 在/var/adm目錄下查詢更改時間在3日以前的檔案

查詢無有效所屬組的檔案,即該檔案所屬的組在/etc/groups中不存在。 

find / –nogroup -print

查詢無有效屬主的檔案,即該檔案的屬主在/etc/passwd中不存在。 

find /home -nouser –print

查詢更改時間比檔案file1新但比檔案file2舊的檔案。

查詢某一型別的檔案,諸如: 

b - 塊裝置檔案。 

d - 目錄。 

c - 字元裝置檔案。 

p - 管道檔案。 

l - 符號鏈結檔案。 

f - 普通檔案。 

find /etc -type d –print 在/etc目錄下查詢所有的目錄 

find . ! -type d –print 在當前目錄下查詢除目錄以外的所有型別的檔案 

find /etc -type l –print 在/etc目錄下查詢所有的符號鏈結檔案

find . -size +1000000c –print 在當前目錄下查詢檔案長度大於1 m位元組的檔案 

find /home/apache -size 100c –print 在/home/apache目錄下查詢檔案長度恰好為100位元組的檔案 

find . -size +10 –print 在當前目錄下查詢長度超過10塊的檔案(一塊等於512位元組)

find / -name "con.file" -depth –print 它將首先匹配所有的檔案然後再進入子目錄中查詢

Linux檔案查詢find grep區分

在使用linux時,經常需要進行檔案查詢。其中查詢的命令主要有find和grep。兩個命令是有區的。區別 1 find命令是根據檔案的屬性進行查詢,如檔名,檔案大小,所有者,所屬組,是否為空,訪問時間,修改時間等。2 grep是根據檔案的內容進行查詢,會對檔案的每一行按照給定的模式 patter 進...

Linux檔案查詢,find grep使用

在使用linux時,經常需要進行檔案查詢。其中查詢的命令主要有find和grep。兩個命令是有區別的。區別 1 find命令是根據檔案的屬性進行查詢,如檔名,檔案大小,所有者,所屬組,是否為空,訪問時間,修改時間等。2 grep是根據檔案的內容進行查詢,會對檔案的每一行按照給定的模式 patter ...

linux技能點三 find grep

find 1.按檔名查詢find name a txt 注意雙引號 2.按檔案大小查詢find size n bcwkkg 表示大於或小於多少,n代表數值,bcek表示單位。3.按時間先後來查詢find amin n 訪問時間 分鐘 find atime n 訪問時間 天 find mmin n 內...