[投稿]のgrep -v、-e、-E

grepの-v、-e、-E

今日、我々は、使用しよう- 良い感じの一部除外することができVを

学習を強化する必要性を。

HTTPS:// www.jianshu.com/p/4ec50fdaf388

 

34 333 613を読み取るために単語の12018.08.27 20時27分16秒数

アウトライン

どのように使用するか、そして、オペレータは、Linux grepコマンドではないには?

実際には、grepコマンド、そこにオプションまたは同等のない事業者がありますが、grepすると、この演算子ませんでした。しかし、その後、あなたはシミュレートし、操作するためにパターンを使用することができます。以下はない、Linuxのgrepコマンドで、使用するか、とする方法を説明するためにいくつかの例を与えるだろう。

次のように次の例では、我々は、このemployee.txtファイルを使用します。

$ cat employee.txt  
100  Thomas  Manager    Sales $5,000 200 Jason Developer Technology $5,500 300 Raj Sysadmin Technology $7,000 400 Nisha Manager Marketing $9,500 500 Randy Manager Sales $6,000 

グレップまたはオペレータ

以下の4つの方法は、grepのOR演算を実現することができます。方法3個人的な勧告。

  1. | \使用します

達成するためのOR演算には、複数のパターンを分離するために|「」あなたはオプションのいずれかのgrepコマンドを使用しない場合は、使用することができます。

grep 'pattern1\|pattern2' filename  

例としては、次のとおりです:

$ grep 'Tech\|Sales' employee.txt  
100  Thomas  Manager Sales $5,000 200 Jason Developer Technology $5,500 300 Raj Sysadmin Technology $7,000 500 Randy Manager Sales $6,000 
  1. オプションを使用します-E

grepの-Eオプションは、正規表現のオプションを拡張するために使用することができます。OR演算を実現するために、複数のパターンを分割する| grepコマンドオプション-E場合は、使用する必要があります。

grep -E 'pattern1|pattern2' filename

例としては、次のとおりです:

$ grep -E 'Tech|Sales' employee.txt  
100 Thomas Manager Sales $5,000 200 Jason Developer Technology $5,500 300 Raj Sysadmin Technology $7,000 500 Randy Manager Sales $6,000 
  1. egrepを使用します

egrepのコマンドは、「グレップの-E」に相当します。このように、分割のパターン複数に応じてOR演算を実現するために、(オプションなし)のegrepコマンドを使用。

egrep 'pattern1|pattern2' filename  

例としては、次のとおりです:

$ egrep 'Tech|Sales' employee.txt  
100  Thomas  Manager Sales $5,000 200 Jason Developer Technology $5,500 300 Raj Sysadmin Technology $7,000 500 Randy Manager Sales $6,000 
  1. -eオプションを使用します

グレップの-eオプションを使用し、唯一のパラメータを渡します。OR演算を実現するために、複数のパターンを得るために、複数の-eオプションを使用して、単一のコマンド。

grep -e pattern1 -e pattern2 filename

例としては、次のとおりです:

$ grep -e Tech -e Sales employee.txt 100 Thomas Manager Sales $5,000 200 Jason Developer Technology $5,500 300 Raj Sysadmin Technology $7,000 500 Randy Manager Sales $6,000 

grepの操作

  1. -E 'PATTERN1を。*パターン2' を使用します

grepコマンド自体は、AND関数を提供していません。しかし、AND演算を実現するために-Eオプションを使用して。

grep -E 'pattern1.*pattern2' filename  
grep -E 'pattern1.*pattern2|pattern2.*pattern1' filename 

以下の通り:(最初の例は、2つの配列パターンが指定されています)

$ grep -E 'Dev.*Tech' employee.txt  
200 Jason Developer Technology $5,500 

第二の例:(シーケンシャルパターンが固定されていない2つのスクランブルされてもよいです)

$ grep -E 'Manager.*Sales|Sales.*Manager' employee.txt  
  1. 複数のgrepコマンドの使用

grepコマンドを達成するためと意味で、パイプ記号で区切って、複数使用することができます。

grep -E 'pattern1' filename | grep -E 'pattern2'  

例としては、次のとおりです:

$ grep Manager employee.txt | grep Sales  
100  Thomas  Manager    Sales       $5,000  
500  Randy   Manager    Sales       $6,000  

grepが動作していません

  1. grepの-vオプションを使用します

使用grepの動作が実現できるわけではありません-v。-vオプションは、抗選挙マッチ(反転試合)を実装するために使用されます。指定されたパターンを除くすべての行で一致させることができるよう。

grep -v 'pattern1' filename

例としては、次のとおりです:

$ grep -v Sales employee.txt  
200  Jason Developer Technology $5,500 300 Raj Sysadmin Technology $7,000 400 Nisha Manager Marketing $9,500 
  1. これは、操作や他の操作は、より強力な組み合わせを実現するために、団結することはできません。

この例で得られたとして、 'Managerまたは開発者ではなく、営業の成績:

$ egrep 'Manager|Developer' employee.txt | grep -v Sales  
200  Jason   Developer  Technology  $5,500  
400  Nisha   Manager    Marketing   $9,500 

おすすめ

転載: www.cnblogs.com/jinanxiaolaohu/p/11583682.html