【一筆帶過】如何在CentOS中尋找帶有某一個關鍵詞的檔案
阿新 • • 發佈:2021-09-15
事情起因:(只想看命令的請往下拉,紅字加粗的那部分就是)
剛裝好的CentOS裡的yum包中,有許多repo檔案裡的源是寫了了"enabled=0"(即禁用)的,
/etc/yum.repos.d裡有很多repo原始檔 |
repo原始檔中有很多源帶有enabled=0這句話 |
所以為了確認哪些檔案有這個情況,我便開始排查。
具體程式碼是這句
grep -r "enabled=0" /etc/yum.repos.d/
輸出結果如下圖所見,是以"檔名:原查詢物件"的格式顯示出來的 |
由於輸出的資料重複行和不需要的內容太多了,需要進行過濾。
結果
最終的命令是如下所示:
grep -r "enabled=0" /etc/yum.repos.d | cut -d ':' -f 1 | uniq
除了grep命令以外,我們還需要用到cut命令和uniq命令,下面是說明
cut命令:將文字的每一行以固定的分隔符進行統一分割
-d ':' 表示定義冒號為分隔符
-f 1表示將分割後將第一部分的內容展示出來
uniq命令:從輸入檔案或者標準輸入中篩選相鄰的匹配行並寫入到輸出檔案或標準輸出。
需要注意的是,uniq命令只會判斷相鄰的重複行,因此通常是和sort命令一起用的
因為grep命令是一個檔案一個檔案查詢的,所以只會有重複行全都是相鄰的,不需要用到sort命令。