命令格式:grep -A m 「關鍵字」 xxxx(檔案)
顯示出關鍵字所在行以及關鍵字所在的以下m行內容
[root@localhost ~]# grep -A 10 「game」 /etc/passwd #搜尋出關鍵字「game」 並列印出關鍵字所在的行以及關鍵字以下10行
命令格式:grep -B m 「關鍵字」 xxxx(檔案)
顯示出關鍵字所在行以及關鍵字所在的以上m行內容
[root@localhost ~]# grep -B 6 「sync」 /etc/passwd #搜尋出關鍵字「sync」並列印出關鍵字所在行以及關鍵字以上6行
只顯示了之上5行說明再其上只有5行了;
命令格式:grep -C m 「關鍵字」 xxxx(檔案)
顯示出關鍵字所在行以及關鍵字所在的上下m行內容
[root@localhost ~]# grep -C 6 「sync」 /etc/passwd #搜尋出關鍵字「sync」並列印出關鍵字所在行以及關鍵字的上下6行
[root@localhost ~]# grep 「xiaohua」 /etc/passwd /etc/shadow /etc/group /etc/gshadow
在多個檔案上查詢關鍵字
命令格式:grep -l 「關鍵字」 xxxx(檔案)
只顯示包含關鍵字的檔名
在一堆檔案中尋找;不能在目錄中尋找;
命令格式:grep -n 「關鍵字」 xxxx(檔案)
顯示出關鍵字所處檔案中的行號
[root@localhost ~]# grep -n 「xiaohua」 /etc/passwd /etc/shadow /etc/group /etc/gshadow
[root@localhost ~]# grep "xiaowang" /etc/passwd | sed 's/xiaogang/xiaowang/g' #查詢出檔案的關鍵字的資訊並作出相應的替換
xiaowang : x:503:503::/home/xiaowang:/bin/bash
's/xiaogang/xiaowang/g' #Linux正則表達式 s表示行數例如10s,100s,單獨一個s說明說有的行; 用xiaogang去替換xiaowang g 表示結束
[root@localhost ~]# ls />1.txt && cat 1.txt |grep "etc" #採用grep組合命令查詢是否有etc的目錄
ls / (檢視」/「目錄下的檔案) >1.txt(重定向到1.txt) &&(並且) cat 1.txt(檢視1.txt) |(管道符)grep "etc"(查詢etc)
awk命令主要用來查詢檔案的列,具體請看Linux-awk命令詳解
[root@localhost ~]# awk -F : ‘{print $1}’ /etc/passwd #查詢/etc/passwd 中以:爲分隔的第一列;
[root@localhost ~]# df -h | awk ‘{print $1 " " $2}’ #df -h 檢視磁碟使用情況 並輸出第一列和第二列
[root@localhost ~]# ifconfig | grep Bcast | awk ‘{print $2}’|awk -F : ‘{print $2}’ #檢視ip 地址資訊
命令格式:grep -v 「關鍵字」 xxxx (檔案)
過濾掉檔案中含有關鍵字的行
[root@localhost ~]# grep -v 「nologin」 /etc/passwd >grep-v.txt && cat grep-v.txt #過濾掉」nilogin「
[root@localhost ~]# grep -v 「nologin」 /etc/passwd |sed ‘s/x/xxx/g’ >grep-v.txt && cat grep-v.txt #把x替換成xxx
命令格式: grep 「^關鍵字」 xxxx(檔名)
== 找出並顯示以關鍵字開頭的檔案資訊==
[root@localhost ~]# grep 「^user」 /etc/passwd #輸出檔案資訊中以’‘user’'開頭的內容
==命令格式:grep 「關鍵字KaTeX parse error: Expected 'EOF', got '#' at position 54: …ot@localhost ~]#̲ grep "nologin」 /etc/passwd #輸出文件資訊中以nologin結尾的內容
命令格式: grep -v 「^$」 xxxx(檔名)
輸出檔案資訊時過濾掉空行
命令格式: grep -r -n 「關鍵字」 xxxx(檔名)
==遞回查詢只要包含關鍵字的資訊都能被查詢出 ==
命令格式: grep -i 「關鍵字」 xxxx(檔案)
在檢視檔案時,可以忽略關鍵字是否大寫
命令格式: grep -e 「關鍵字」 xxxx(檔案)
在檢視檔案時,可以多個關鍵字共同進行查詢
可以與-v同時使用;用來過濾掉更多關鍵字;
命令格式: grep -f xxxx(檔案1) xxxx(檔案2)
在查詢時,以檔案1中的內容爲指定關鍵字進行查詢
命令格式: grep -c 「關鍵字」 xxxx(檔案)
查詢出包含關鍵字的資訊後顯示的是含有關鍵字的行數
. :效果匹配一個任意的非換行符字元
」 * 「 :效果匹配0個或多個資訊
例如a* :表示含有0個a或多個a
aa* :表示含有一個a或多個a
#: 匹配一個指定範圍內的字元
a-z :所有小寫字母
0-9:所有數位
^[A-Z]:所有大寫字母開頭
a-zA-Z:所有字母
[^abc]:匹配不包含^後的任意字元,是對[abc]的取反
0-9:所有數位
^ [ A-Z]:所有大寫字母開頭
a-zA-Z:所有字母
[ ^ abc]:匹配不包含^後的任意字元,是對[abc]的取反