find文件查找


find文件查找

1.文件查找

find:查找文件和目錄
	語法:
		find [路徑] [選項] [表達式] [動作]

2.find的選項

-type:按文件類型查找
	文件類型的分類:
		f:普通文件
		d:目錄
		l:軟鏈接文件
		c:字符設備文件
		b:塊設備文件
		s:安全套接字文件
		p:管道文件
	語法:
		find 路徑 -type 文件類型 

-size:按文件內容的大小查找
	數字:精准查找文件內容的大小
	+ 數字:查找大於這個數字的文件內容的大小
	- 數字:查找小於這個數字的文件內容的大小
	語法:
		find 路徑 -size [+(-)]數字

-name:按文件名查找
	語法:
		find 路徑 -name '文件名'

-iname:按文件名查找並且不區分大小寫
	語法:
		find 路徑 -iname '文件名'

按文件時間查找:
	一個文件三種時間:
        -atime:按文件訪問時間查找
        -mtime:按文件內容創建,修改時間查找(一般使用這個查找)
        -ctime:按文件屬性修改時間查找
	
		數字:查找從當前時間算起減去這個數字的文件
		+ 數字:查找從當前時間算起減去這個數字之前的所有文件
		- 數字:查找從當前時間算起到這個數字之內的文件
	語法:
		find 路徑 -mtime [+(-)]數字

stat:查看文件的三種時間
	語法:
		stat 文件名

-user:按文件屬主查找
-nouser:查找沒有屬主的文件
	語法:
		find 路徑 -user 文件的屬主

-group:按文件屬組查找
-nogroup:查找沒有屬組的文件
	語法:
		find 路徑 -group 文件的屬組

-perm:按文件權限查找
	參數:
		/權限:三個權限位上,只要有一個權限位上的權限被包含,就可以被找到
		-權限:每個權限位上必須該數字權限的所有權限
	語法:
		find 路徑 -prem [-(/)]權限數字

-maxdepth:按文件層級查找
	語法:
		find 路徑 -maxdepth 數字(會顯示數字到第一層層級)

3.find的動作

-print:打印查找到的內容到終端上(find命令默認自帶加了和沒加沒有區別)
-ls:查看文件的詳細信息
	其他查看信息(效果一樣):
	 	|xargs ls -l
		ls -l $(find xxx)
		ls -l `find xxx`

-delete:刪除查找到的文件,只能刪除空目錄
	其他刪除命令:
		|xargs rm -fr
		rm -rf $(find xxx)
		rm -rf `find xxx`

-ok:找到文件后執行后面的bash命令,並詢問是否要進行操作
	語法:
		find 路徑 選項 -ok bash命令 {查找出來的文件} \;(這個'\'轉義符,find命令不識別';',所以需要轉義符來處理)

-exec:和-ok動作一樣,但是它會直接執行不會詢問

4.find多條件查找

-a:和,並且(fin命令自帶,兩個選項之間可以不加-a)

-o:或者

!:取反

5.補充

xargs:管道命令,是個命令傳遞參數的一個過濾器,也是組合多個命令的一個工具,就是把其他命令給它的數據傳遞給它后面的命令作為參數
	語法:
		find xxx |xargs [選項] bash命令

	選項:
		-i:用{}放置傳遞的數據


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM