linux命令之 find

定義:
find 命令主要用於在指定的目錄下面查找匹配的文件,它支持正則表達式。
正則表達式

主要參數:
!取反
-a 至關於and 取交集
-o 至關於or 取並集
-mtime 更待時間
-atime 訪問數據
-ctime 建立時間
-maxdepth 查找深度
-name 按文件名字查找
-iname 按文件名字查找(忽略大小寫)
-type 按文件類型查找
-size 按文件大小查找










ide

下面就以上的參數分別舉例:it

find ./ -name "acrosspm" 在當前目錄下面查找文件或者目錄的名字裏麪包含acrosspm關鍵字的
find ./ ! -name "acrosspm" 在當前目錄下面查找文件或者目錄的名字裏面不包含acrosspm關鍵字的
class

find ./ -type f -name "acrosspm" 在當前目錄下面只查找文件的名字裏麪包含acrosspm關鍵字的test

find ./ -size +1M 查找當前目錄下面大於1M的文件im

find ./ -maxdepth 1 -name "*.log" 查找深度爲1(只查找當前目錄,不查找子目錄),以log結尾的文件數據

find ./ -name "a" -o -name "b" 查找 a 或者 b 文件di

find ./ -name "test.txt" -mtime +7 查找7天之前修改過的test.txt文件
find ./ -name "test.txt" -mtime -7 查找7天內修改過的test.txt文件
文件

find經常使用命令公式搭配:
find ./ -name "test.txt" -exec rm {}\
時間

find ./ -name "text.txt"|xargs rm -f 這個地方xargs的意思是把找到的符合結果放到一行,再rm。

find ./ -name "test.txt" -type f |xargs -i cp {} /home/acrosspm/

注意:find ./ 和 find ./ 區別 ./不包含當前目錄