grep學習示例

grep學習示例


Linux中grep命令使用較多,現將自己學習的羅列幾條.

1. 去除空白行

    空白行是指空行或者只有空格的行,使用grep命令去除空白行,命令如下:

     grep -v  “^[[:space:]]*$”  file

2. 實現or 和 and功能

    1. grep -e 實現多個選項間的邏輯or關系 
        顯示shell類型為bash或者nologin的行:

     grep -e bash -e nologin  /etc/passwd

    2. 兩次使用grep實現多個選項間的邏輯and關系 
        判斷用戶名為wang并且用戶ID為1007的用戶是否存在:

     grep “^wang\>”  /etc/passwd | cut -d: -f3 | grep “\<1007\>”

3. 過濾出段落中的IP地址

    1. 顯示ifconfig命令結果中所有IPv4地址

     ifconfig | egrep -o “\<(([0-9] | [1-9][0-9] | 1[0-9]{2} | 2[0-4][0-9] | 25[0-5]).){3}([0-9] | [1-9][0-9] | 1[0-9]{2} | 2[0-4][0-9] | 25[0-5])\>”

    2. 顯示file文件中類似255.255.255.0 或者 114.114.114.119這樣的地址

    ifconfig | egrep -o “\<(([0-9] | [1-9][0-9] | 1[0-9]{2} | 2[0-4][0-9] | 25[0-5]).)\1\1([0-9] | [1-9][0-9] | 1[0-9]{2} | 2[0-4][0-9] | 25[0-5])\>”

4. 對比grep和egrep中( )的使用區別

    1. 用 grep 匹配 (jihui)

    grep -o “(jihui)” f1

    2. 用 egrep 匹配 (jihui)

    egrep -o “\(jihui\)” f1

5. grep的多文件匹配

    文件 f1 的內容為:

(jihui) 
jihui 
he he 
(jihui)shi hen zhongyaodao(jihui)important

    文件 f2 的內容為:

jihui is important 
jihui

    一次進行多文件的匹配,顯示在f1,f2文件中匹配jihui的行

    grep  “jihui”   f1   f2

    顯示的結果:

f1:(jihui) 
f1:jihui 
f1:(jihui)shi hen zhongyaodao(jihui)important 
f2:jihui is important 
f2:jihui

原創文章,作者:woking,如若轉載,請注明出處:http://www.www58058.com/83427

(0)
wokingwoking
上一篇 2017-07-30
下一篇 2017-07-30

相關推薦

  • 關于大型網站技術演進的思考(八):存儲的瓶頸(8)

    原文出處: 夏天的森林  在開始本篇主要內容前,我們一起看看下面的幾張截圖,首先是第一張圖,如下圖所示: 這是一家電商網站的首頁,當我們第一次打開這個首頁,網站會彈出一個強制性的對話框,讓用戶選擇貨物配送的地址,如果是淘寶和京東的話,那么這個選擇配貨地址的選項是在商品里,如下圖是淘寶的選擇配送地點: 下圖是京東選擇配貨地點: 那么圖一跟京…

    2015-03-11
  • linux內核及centos系統啟動流程

    Linux組成 Linux: kernel+rootfs(根文件系統) kernel功能: 進程管理、內存管理、網絡管理、驅動程序、文件系統、安全功能 rootfs:程序和glibc  庫:函數集合, function, 調用接口(頭文件負責描述)      過程調用:proce…

    Linux干貨 2016-09-10
  • Linux 第五天: (08月01日) Linux用戶組管理

    Linux 第五天: (08月01日) Linux用戶組管理         管理員 root,0普通用戶 1-65535系統用戶 1-499(centos6), 1-999(centos7)登錄用戶 500(centos6)+, 1000(centos7)+   /etc/passwd 用戶及屬性/etc/…

    Linux干貨 2016-08-08
  • 位置變量$1,$2,$@,$*,$#詳解

    位置變量: 位置變量實際是屬于系統預定義變量的一種,不能修改變量名,同時作用也是固定的,也不能新增的變量,只能修改變量的值。     常用的位置參數變量        $0代表命令本身,$1-$9代表第一到第九個參數,十以上的參數需要用大括號括起來,比如${11}.     該變…

    Linux干貨 2016-08-18
  • linux啟動和內核管理

    linux啟動和內核管理:1. 加載BIOS 的硬件信息,獲取第一個啟動設備2. 讀取第一個啟動設備MBR 的引導加載程序(grub) 的啟動信息3. 加載核心操作系統的核心信息,核心開始解壓縮,并嘗試驅動所有的硬件設備4. 核心執行init 程序,并獲取默認的運行信息5.init 程序執行/etc/rc.d/rc.sysinit 文件6. 啟動核心的外掛模…

    Linux干貨 2017-03-28
  • Linux網絡屬性配置命令和管理詳解

    一、Linux網絡屬性配置     1.Linux主機接入到網絡方式 IP/NETMASK:實現本地網絡通信 路由(網關):可以進行跨網絡通信 DNS服務器地址:基于主機名的通信,Linux可以有三個DNS地址 當第一個地址本身掛了,才會查找其備用地址;若第一個地址無法解析則停止     2.網絡屬…

    Linux干貨 2016-04-30
欧美性久久久久