find命令:基於文件屬性查找

find命令:基於文件屬性查找

find [目錄]	-name "文件名*" 表示匹配正則
			-maxdepth 1 表示當前目錄
			-type(f/d)
			-size(+大於/-小於)
			-perm(permission)
			-exec [命令] {} \;或者+
				後面跟一個命令,對前面找到的文件(用大括號表示)
				\ 是轉義符
				\; 表示找到一個執行一次命令 
				+ 表示直接執行所有文件
			-ok 直接執行後面命令

一些經典例子

查找某個目錄下10天前修改過的文件

find  [目錄] -mtime +10

查找三天內修改過的文件

find  [目錄] -mtime -3

找到文件並打包(三種)

find . -type f -exec tar c(create)zvf n.tar.gz {} +
find . -type f -exec tar u(update)zvf n.tar.gz {} \;
find . -type f | xargs tar czvf.tar.gz

xargs: 將管道左側的輸出,作爲管道右側命令的輸入,並有切分執行功能

查找目錄下的所有文件中是否包含某個字符串

find . | xargs grep -ri "IBM"

查找目錄下的所有文件中是否包含某個字符串,並且只打印出文件名

find . | xargs grep -ril "IBM"
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章