tft每日頭條

 > 生活

 > linux中怎麼用grep查找文檔

linux中怎麼用grep查找文檔

生活 更新时间:2024-08-21 12:19:26
概述

一種強大的文本搜索工具,它能使用正則表達式搜索文本,并把匹配的行打印出來

linux中怎麼用grep查找文檔(Linux命令之grep)1

命令格式

grep [options] [pattern] file|directory

1. 命令選項

-l 列出包含指定模式的文件的文件名

-i 忽略大小寫

-w 完全匹配關鍵詞

-n 查找指定模式并顯示匹配行的行号

-v 輸出不包含指定模式的行

-o 僅顯示匹配的字符串

-r 遞歸地查找特定模式

-e 查找多個模式

-c 計算模式匹配到的數量

-B 輸出匹配指定模式前N行

-A 輸出匹配指定模式後N行

-C 輸出匹配指定模式前後N行

-E 擴展正則表達式

-l 打印匹配的文件名

-L 打印不匹配的文件名

2.常見正則

^ 匹配行開始,如:/^sed/匹配所有以sed開頭的行。

$ 匹配行結束,如:/sed$/匹配所有以sed結尾的行。

x{m} 重複字符x,m次,如:/0\{5\}/匹配包含5個0的行。

x{m,} 重複字符x,至少m次,如:/0\{5,\}/匹配至少有5個0的行。

x{m,n} 重複字符x,至少m次,不多于n次,如:/0\{5,10\}/匹配5~10個0的行。

^$ 匹配空行

abc$ 匹配以abc結尾的行

[] 匹配一個指定範圍内的字符,如[0-9a-z]

[^] 匹配一個不在指定範圍内的字符

\<[0-9]{2}\> 匹配獨立2位數

使用示例

1. 以#開頭的行及空行不顯示

grep -v "^#\|^$" /etc/rsyslog.conf

2. 清除本機除了當前登陸用戶以外的所有用戶

kill $(who -u|grep -v `whoami`|awk '{print $6}'|sort -u)

3. 統計etc及其子目錄下所有文件數量

ls -lR /etc/ | grep "^-" | wc -l

4. 打印本機eth0網卡ipv4地址

ifconfig eth0|grep -E "([0-9]{1,3}\.){3}[0-9]{1,3}" | awk '{print $2}'

5. 打印本機eth0網卡mac地址

ifconfig eth0|egrep '[0-9a-fA-F]{2}(:[0-9a-fA-F]{2}){5}' | awk '{print $2}'

ifconfig eth0|egrep '[0-9a-fA-F]{4}(\.[0-9a-fA-F]{4}){2}' | awk '{print $2}'

6. 多個模式關鍵詞匹配

grep -Ew "Run|Quit" rj.log

7. 匹配包含三位數字的行

grep -E "\<[0-9]{3}\>" a.c

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关生活资讯推荐

热门生活资讯推荐

网友关注

Copyright 2023-2024 - www.tftnews.com All Rights Reserved