linux中find命令的使用
我們已經(jīng)熟悉windows下的文件搜索功能,但在linux下的文本界面開(kāi)發(fā)程序時(shí),如果不知道實(shí)現(xiàn)同樣功能的命令往往讓人感到不是很愉快。現(xiàn)在我就介紹一下在這種情況下如何進(jìn)行搜索操作的find命令。
find命令能完成在指定的目錄下完成查找指定文件的功能。其命令格式如下:
find PATH -option 參數(shù) [-print] [-exec 命令 {} \;]
PATH:為要搜索文件的目錄。
-option 參數(shù):用來(lái)控制搜索方式,具體如下(以下只給我常用的):
-name "文件名(可以有通配符,*等)":指令查找名。
-prune 目錄:指出搜索時(shí)不搜索該目錄。
-user 用戶(hù)名:按用戶(hù)名搜索。
-mtime +n或-n:按時(shí)間搜索,+n:表示n天之前的;-n:表示今天到n天前之間的。
-type 文件類(lèi)型:按指定文件類(lèi)型搜索。文件類(lèi)型包括:b:塊設(shè)備文件;c:字符設(shè)備文件;f:普通文件;l:符號(hào)連接;d:目錄;p:管道。
-print:將搜索結(jié)果輸出到標(biāo)準(zhǔn)輸出。
例子:在root以及子目錄查找不包括目錄/root/bin的,greek用戶(hù)的,文件類(lèi)型為普通文件的,3天之前的名為test-find.c的文件,并將結(jié)構(gòu)輸出,find命令如下:
find / -name "test-find.c" -type f -mtime +3 -user greek -prune /root/bin -print
很簡(jiǎn)單吧。:)
下面看一下exec選項(xiàng):
-exec:對(duì)搜索的結(jié)構(gòu)指令指定的shell命令。注意格式要正確:"-exec 命令 {} \;",在}和\之間一定要有空格才行。
例子:對(duì)上述例子搜索出來(lái)的文件進(jìn)行刪除操作,命令如下:
find / -name "test-find.c" -type f -mtime +3 -user greek -prune /root/bin -exec rm {} \;
好了,find命令常用的用法已經(jīng)說(shuō)的差不多了,如果你已經(jīng)掌握,那么你會(huì)發(fā)現(xiàn)這個(gè)比window下的搜索好用的多。還是自己感受吧。
【編輯推薦】