Linux文本查找命令find的用法詳解
find 命令主要用于查找目錄和文件,可以指定多種參數(shù)進(jìn)行匹配。
用法:find +查找路徑 +命令參數(shù) [輸出形式]
查找路徑:告訴find在哪查找
命令參數(shù):指定要查找的文件屬性,屬性包括多種,類型、名稱、大小、修改時(shí)間等等
常用的參數(shù):
- -name 按文件名進(jìn)行查找
- -user 按照文件的屬主進(jìn)行查找
- -mtime 按照文件的更改時(shí)間來查找,-n 表示文件修改時(shí)間距今天n天以內(nèi),+n 表示文件修改時(shí)間距今天n天以前
- -type 按照文件的類型查找,d 表示目錄, f表示文件 ,l 表示符號連接文件
- -size 按照文件大小進(jìn)行查找(需要加單位,K、M、G),+n M 表示查找文件大于n M的文件
- -maxdepth 指定查找文件時(shí)的最大層級(默認(rèn)是在指定路徑下的所有子目錄中查找,指定層級后可以現(xiàn)在只在一級目錄或者2級目錄查找)
輸出形式:輸出形式可選,輸出形式有 -print 打印查找到的內(nèi)容(默認(rèn)就會打印查找到的內(nèi)容,因此一般不用),-exec 對查找到的內(nèi)容做進(jìn)一步處理(比較常用),形式為:
-exec Linux指令 {} \; {}代表查找到的內(nèi)容
實(shí)例:
find . -maxdepth 1 -name "1.txt" # 直接指定文件名查找 ,-maxdepth 1表示最大查找層級為一級目錄
find . -maxdepth 1 -name "*.txt" # 在當(dāng)前目錄下查找.txt結(jié)尾的文件
find . -maxdepth 1 -name "[0-9].txt" # 查找以數(shù)字命名的txt文件
find . -maxdepth 1 -name "[0-9]*.txt" # 查找以數(shù)字開頭的文件
find . -maxdepth 1 -mtime -5 # 查找當(dāng)前目錄下,5天之內(nèi)有修改過的文件 find . -maxdepth 1 -mtime +5 # 查找當(dāng)前目錄下,修改時(shí)間超過5天的文件 find . -maxdepth 1 -type d # 在當(dāng)前目錄中查找類型是目錄的文件,最大查找層級一級目錄(會查找隱藏的目錄)
find . -maxdepth 1 -size +10M # 查找當(dāng)前目錄下大于10M的文件 find . -maxdepth 1 -size -1M # 查找當(dāng)前目錄下小于1M的文件
find . -maxdepth 1 -name "[a-z].txt" -exec rm -rf {} \; # 查找以一個(gè)字母命名的txt文件,進(jìn)行刪除 find . -maxdepth 1 -name "*.txt" | xargs grep "error" # 打印以txt結(jié)尾的文件中,有error的行的內(nèi)容 find . -maxdepth 1 -name "*.txt" | xargs rm # 刪除當(dāng)前目錄下txt結(jié)尾的文件
xargs 將管道前命令的執(zhí)行結(jié)果當(dāng)作參數(shù)逐個(gè)傳遞后管道后的命令
ls [a-z].txt | xargs -n1 -i{} mv {} {}.bak # 將當(dāng)前目錄中以單個(gè)字母命名的txt文件增加一個(gè).bak后綴,-n1意思是一個(gè)一個(gè)對象的去處理,-i{} 把前面的對象使用{}取代,mv {} {}.bak 相當(dāng)于 mv a.txt a.txt.bak
總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請查看下面相關(guān)鏈接
相關(guān)文章
Apache Omid TSO 組件源碼實(shí)現(xiàn)原理解析
這篇文章主要介紹了Apache Omid TSO 組件源碼實(shí)現(xiàn)原理解析,本文給大家介紹的非常詳細(xì),感興趣的朋友一起看看吧2024-07-07Linux 內(nèi)核通用鏈表學(xué)習(xí)小結(jié)
本篇文章主要介紹了Linux 內(nèi)核通用鏈表學(xué)習(xí)小結(jié),小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-11-11linux Centos7斷網(wǎng)下安裝應(yīng)用程序詳解
在本篇文章里小編給大家整理的是關(guān)于linux最新版本Centos7,斷網(wǎng)情況下安裝應(yīng)用程序相關(guān)步驟,需要的朋友們可以學(xué)習(xí)下。2019-08-08Linux下Oracle設(shè)置定時(shí)任務(wù)備份數(shù)據(jù)庫的教程
這篇文章主要介紹了Linux下Oracle設(shè)置定時(shí)任務(wù)備份數(shù)據(jù)庫的方法,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-11-11Xshell連接centOS7并與CentOS7聯(lián)網(wǎng)
本文主要介紹了Xshell連接centOS7并與CentOS7聯(lián)網(wǎng),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-08-08linux CentOS 系統(tǒng)下如何將php和mysql命令加入到環(huán)境變量中
這篇文章主要介紹了linux CentOS 系統(tǒng)下如何將php和mysql命令加入到環(huán)境變量中的相關(guān)資料,需要的朋友可以參考下2016-11-11在Linux中打開、提取和創(chuàng)建rar文件的操作方法
RAR 是一種流行的文件壓縮格式,以其高效的壓縮算法和將大文件壓縮為較小檔案的能力而聞名,雖然 Linux 本身支持 ZIP 和 TAR 等常見檔案格式,但處理 RAR 文件需要額外的工具,在這篇博文中,我們將探討如何在 Linux 中打開、提取和創(chuàng)建 RAR 文件,需要的朋友可以參考下2024-04-04