六月丁香五月婷婷,丁香五月婷婷网,欧美激情网站,日本护士xxxx,禁止18岁天天操夜夜操,18岁禁止1000免费,国产福利无码一区色费

學(xué)習(xí)啦 > 學(xué)習(xí)電腦 > 操作系統(tǒng) > Linux教程 > 15個(gè)Linux Grep命令使用實(shí)例

15個(gè)Linux Grep命令使用實(shí)例

時(shí)間: 志藝942 分享

15個(gè)Linux Grep命令使用實(shí)例

  本文講解了如從單個(gè)文件中查找指定的字符串、從多個(gè)文件中查找指定的字符串、在文件中匹配正則表達(dá)式、顯示匹配后N行等內(nèi)容,接下來(lái)是小編為大家收集的15個(gè)Linux Grep命令使用實(shí)例,希望能幫到大家。

  15個(gè)Linux Grep命令使用實(shí)例

  Grep命令主要用于從文件中查找指定的字符串。

  首先建一個(gè)demo_file:

  復(fù)制代碼

  代碼如下:

  $ cat demo_file

  THIS LINE IS THE 1ST UPPER CASE LINE IN THIS FILE.

  this line is the 1st lower case line in this file.

  This Line Has All Its First Character Of The Word With Upper Case.

  Two lines above this line is empty.

  And this is the last line.

  例01:從單個(gè)文件中查找指定的字符串

  復(fù)制代碼

  代碼如下:

  $ grep "this" demo_file

  this line is the 1st lower case line in this file.

  Two lines above this line is empty.

  例02:從多個(gè)文件中查找指定的字符串

  復(fù)制代碼

  代碼如下:

  $ cp demo_file demo_file1

  $ grep "this" demo_*

  demo_file:this line is the 1st lower case line in this file.

  demo_file:Two lines above this line is empty.

  demo_file:And this is the last line.

  demo_file1:this line is the 1st lower case line in this file.

  demo_file1:Two lines above this line is empty.

  demo_file1:And this is the last line.

  例03:忽略大小寫(xiě)使用 grep -i

  復(fù)制代碼

  代碼如下:

  $ grep -i "the" demo_file

  THIS LINE IS THE 1ST UPPER CASE LINE IN THIS FILE.

  this line is the 1st lower case line in this file.

  This Line Has All Its First Character Of The Word With Upper Case.

  And this is the last line.

  例04:在文件中匹配正則表達(dá)式

  如果你能在實(shí)際使用正則表達(dá)式,能使效率大大提高。在下面的例子中,匹配了所有以lines開(kāi)頭,以empty結(jié)尾的行。

  復(fù)制代碼

  代碼如下:

  $ grep "lines.*empty" demo_file

  Two lines above this line is empty.

  從Grep文檔的來(lái)看,一個(gè)正則表達(dá)式必須遵循下面的匹配操作。

  1.? The preceding item is optional and matched at most once.

  2.* The preceding item will be matched zero or more times.

  3.+ The preceding item will be matched one or more times.

  4.{n} The preceding item is matched exactly n times.

  5.{n,} The preceding item is matched n or more times.

  6.{,m} The preceding item is matched at most m times.

  7.{n,m} The preceding item is matched at least n times, but not more than m times.

  例05:用grep -w來(lái)查找全匹配,不包括子字符串

  比如說(shuō):用下面的例子搜索出來(lái)的例子包括"is","his"

  復(fù)制代碼

  代碼如下:

  $ grep -i "is" demo_file

  THIS LINE IS THE 1ST UPPER CASE LINE IN THIS FILE.

  this line is the 1st lower case line in this file.

  This Line Has All Its First Character Of The Word With Upper Case.

  Two lines above this line is empty.

  And this is the last line.

  而用grep -iw搜索出來(lái)的結(jié)果如下: 注意,忽略大小。"IS","is"

  復(fù)制代碼

  代碼如下:

  $ grep -iw "is" demo_file

  THIS LINE IS THE 1ST UPPER CASE LINE IN THIS FILE.

  this line is the 1st lower case line in this file.

  Two lines above this line is empty.

  And this is the last line.

  例06:用grep -A,-B,-C 來(lái)查看after/before/around 行

  當(dāng)在一個(gè)大的文件中執(zhí)行g(shù)rep操作時(shí),如果想要看其中一些行,并且想看之前,之后的或某些行附近的,那么這里命令就起作用了。grep -A,-B,-C.先建個(gè)demo.txt作為模板

  復(fù)制代碼

  代碼如下:

  $ cat demo_text

  4. Vim Word Navigation

  You may want to do several navigation in relation to the words, such as:

  * e - go to the end of the current word.

  * E - go to the end of the current WORD.

  * b - go to the previous (before) word.

  * B - go to the previous (before) WORD.

  * w - go to the next word.

  * W - go to the next WORD.

  WORD - WORD consists of a sequence of non-blank characters, separated with white space.

  word - word consists of a sequence of letters, digits and underscores.

  Example to show the difference between WORD and word

  * 192.168.1.1 - single WORD

  * 192.168.1.1 - seven words.

  6.1 顯示匹配后N行

  復(fù)制代碼

  代碼如下:

  $ grep -A 3 -i "example" demo_text

  Example to show the difference between WORD and word

  * 192.168.1.1 - single WORD

  * 192.168.1.1 - seven words.

  6.2 顯示匹配前N行

  復(fù)制代碼

  代碼如下:

  $ grep -B 2 "single WORD" demo_text

  Example to show the difference between WORD and word

  * 192.168.1.1 - single WORD

  6.3 顯示匹配前N行

  復(fù)制代碼

  代碼如下:

  $ grep -C 2 "Example" demo_text

  word - word consists of a sequence of letters, digits and underscores.

  Example to show the difference between WORD and word

  * 192.168.1.1 - single WORD

  例07:用GREP_OPTIONS來(lái)讓查找的項(xiàng)醒目

  如果你想使匹配的好看且醒目,可以使用下面的操作:

  復(fù)制代碼

  代碼如下:

  $ export GREP_OPTIONS='--color=auto' GREP_COLOR='100;8'

  $ grep this demo_file

  this line is the 1st lower case line in this file.

  Two lines above this line is empty.

  And this is the last line.

  例08:用grep -r來(lái)搜索所有的文件及子目錄

  復(fù)制代碼

  代碼如下:

  $ grep -r "ramesh" *

  例09:用grep -v來(lái)顯示不匹配的項(xiàng)

  復(fù)制代碼

  代碼如下:

  $ grep -v "go" demo_text

  4. Vim Word Navigation

  You may want to do several navigation in relation to the words, such as:

  WORD - WORD consists of a sequence of non-blank characters, separated with white space.

  word - word consists of a sequence of letters, digits and underscores.

  Example to show the difference between WORD and word

  * 192.168.1.1 - single WORD

  * 192.168.1.1 - seven words.

  例10:顯示所有不匹配的項(xiàng)

  復(fù)制代碼

  代碼如下:

  $ cat test-file.txt

  a

  b

  c

  d

  $ grep -v -e "a" -e "b" -e "c" test-file.txt

  d

  例11:用grep -c 來(lái)計(jì)算匹配的數(shù)量

  11.1計(jì)算匹配的字符串?dāng)?shù)

  復(fù)制代碼

  代碼如下:

  $ grep -c "go" demo_text

  6

  11.2計(jì)算匹配的模式數(shù)

  復(fù)制代碼

  代碼如下:

  $ grep -c this demo_file

  3

  11.3計(jì)算不匹配的模式數(shù)

  復(fù)制代碼

  代碼如下:

  $ grep -v -c this demo_file

  4

  例12:使用grep -l顯示匹配的文件名

  復(fù)制代碼

  代碼如下:

  $ grep -l this demo_*

  demo_file

  demo_file1

  例13:只顯示匹配的字符串

  復(fù)制代碼

  代碼如下:

  $ grep -o "is.*line" demo_file

  is line is the 1st lower case line

  is line

  is is the last line

  例14:

  復(fù)制代碼

  代碼如下:

  $ cat temp-file.txt1234512345

  $ grep -o -b "3" temp-file.txt

  2:3

  8:3

  注意:上述的不是該字符所在行中的位置,而是字節(jié)的位置。

  例15:用grep -n 顯示行數(shù)

  復(fù)制代碼

  代碼如下:

  $ grep -n "go" demo_text

  5: * e - go to the end of the current word.

  6: * E - go to the end of the current WORD.

  7: * b - go to the previous (before) word.

  8: * B - go to the previous (before) WORD.

  9: * w - go to the next word.

  10: * W - go to the next WORD.


看了“15個(gè)Linux Grep命令使用實(shí)例”還想看:

1.Linux下如何使用grep命令搜索多個(gè)單詞

2.Linux ipcs命令與ipcrm命令的用法詳解

3.全面解析Linux的grep命令中正則表達(dá)式的用法

4.排序命令sort使用實(shí)例介紹

5.linux grep命令詳解

2836836