shell中的通配符(grep、cut、sort等)


一、grep工具

grep是行過濾工具;用於根據關鍵字進行過濾

語法:  grep [ 選項 ]  ‘關鍵字’  文件名

1、顏色顯示: --color=auto

grep --color=auto 'root' passwd

alias grep='grep --color=auto'

 

全局修改,將輸入的grep后面的內容全部改為紅色或高亮

vim  /etc/bashrc

alias grep='grep --color=auto'

source /etc/bashrc 保存全局變量,其他用戶一並同root一樣

 

 過濾包含root的行

grep 'root' passwd  打印包含root的行

grep -n 'root' passwd 打印包含root的行,並注明行號

grep -ni 'root' passwd 打印包含root 的行,忽略大小寫

grep '^root' passwd 打印以root開頭的行

grep 'bash$' passwd 打印以bash結尾的行

grep -niv 'root' passwd 打印不以root開頭的行(反選:v)

grep -nB 3 '^ftp' passwd 打印包含ftp關鍵字的前三行(包含搜索行)

grep -nA 3 'ftp' passwd 打印包含ftp關鍵字的后三行(包含搜索行)

grep -nC 3 'ftp' passwd  打印包含上三行和下三行的所有

grep -w 'hello' passwd 打印包含hello的行

grep -o 'hello' passwd 只打印關鍵字

 

 常見選項:

OPTIONS:

   -i  :  不區分大小寫

  -v :查找不包含指定內容的行,反向選擇

  -w :按單詞搜索

  -o : 打印匹配關鍵字

  -c : 統計匹配到的行數

  -n : 顯示行號

  -r : 逐層遍歷目錄查找

  -A:顯示匹配行擠后面多少行

  -B:顯示匹配行及前面多少行  

  -C:顯示匹配行前后多少行

  -l:只列出匹配的文件名

  -L:列出不匹配的文件名

  -e:使用正則匹配

  -E:使用擴展正則匹配

  ^key:以關鍵字開頭

  key$:以關鍵字結尾

  ^$:匹配空行

  --color=auto:可以將找到的關鍵字部分加上顏色的顯示

 

二、cut工具

cut是列截取工具,用於列的截取

語法:cut  選項 文件名

常見選項: 

  -c:以字符為單位進行分割,截取

  -d: 自定義分割符,默認為制表符  \t

  -f:與 -d 一起使用,指定截取那個區域

截取以冒號  : 為分隔符 打印第一列和第七列 ,取前五行

 cut -d: -f1,7 passwd |head -5

  

 

 取第一列所有

  cut -d: -f1 passwd

 

 截取第一到五個字符

 

 截取從第十個字符開始

 

 查看系統運行級別

runlevel

 cat  /etc/inittab

 

 三、sort工具

sort工具用於排序,他講文件的每一行作為一個單位,從首字符向后,依次按ASCII碼進行比較,最后將他們按升序輸出。

語法和選項:

  -u:去除重復行

  -r:降序排列,默認是升序

  -o:將排序結果輸出到文件中,類似重定向符號。

  -n:以數字排序,默認是按字符排序

  -t:分隔符

  -k:第N列

  -b:忽略前導空格。

  -R:隨機排序,每次運行的結果均不同

 

 四、uniq工具

uniq用於去除連續的重復行

 

 常見選項:

  -i:忽略大小寫

  -c:統計重復行次數

  -d: 只顯示重復行

 

 

 

 

  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM