三天不念口生,三天不寫手生,Linux基本命令Find,grep妙用文件文件內容檢索(查找)好幫手
Find,grep 可以輕松實現對指定文件和目錄的查找,查看,刪除,***內容的清理等等……雖然不及sed\awk\功能強大和復雜,但其方便易用結合其它命令還是可以為我們提供強大的實用功能
1、 查找文件
創建如下結構文件和文件夾,使用find查找my5.txt
find ./ -name my5.txt #查找文件
創建如下結構文件文件夾,使用FIND查找分別查找t文件夾和t.txt文件
find ./ -type d -name t #查找文件夾(d類型為目錄)
find ./ -type f -name t.txt #查找文件(f類型為文件)
查找以當前時間點往前推指定時間內的文件
find /data/test/ -ctime -1 #查找指定目錄下,當前時間點往前推1天內創建的文件或文件夾
find /data/test/ -ctime -6 #查找指定目錄下,當前時間點往前推6天內創建的文件或文件夾
find /data/test/* -ctime -7 #查找指定目錄下,當前時間點往前推7天內創建的文件或文件夾
查找並顯示指定目錄下所有文件詳細信息(包含子目錄下的所有文件)
find /data/test/ -mtime -7 ! -type d|xargs ls -l
find /data/test/ -mtime -7 |xargs ls –l #如果不排除非目錄的顯示結果(參數[ ! -type d])子目錄內容會被重復顯示
查找當前目錄下所有文件不包括文件夾
find ./ ! -type d
查找文件中包含指定內容的文件
查找到指定內容的文件後進行刪除操作
我們先查找後只需要獲取目錄:
find /data/test/ ! -type d |xargs grep jerry|awk -F":" ‘{print $1}‘
由於檢索文件內容有重復所以我目錄有重復的,如果執行刪除也不會出錯,但是為了嚴謹我們去掉重復的
find /data/test/ ! -type d |xargs grep jerry|awk -F":" ‘{print $1}‘|uniq
find /data/test/ ! -type d |xargs grep jerry|awk -F":" ‘{print $1}‘|uniq |xargs rm -rf
三天不念口生,三天不寫手生,Linux基本命令Find,grep妙用文件文件內容檢索(查找)好幫手