Linux|grepとegrepの違いは?【結論:grepだけ使えばOK】

Linuxを勉強したい人向け

こんにちは。

普段はIT業界についてのブログを執筆してるエンジニアです。
» 参考:プログラマーの年収は200万円以下です【IT業界の残酷な成功法則】

今回は、grepについての解説記事です。

本記事の内容

grepでもegrepでも正規表現などの拡張表現が使えます。

ではgrepとegrepは何が違うのでしょうか?以下の3つのコマンドで使える表現を比較しました。

$ grep
$ grep -E
$ egrep

grep,grep -E,egrepそれぞれで使える表現一覧

* ? + | ^ $ {n,m} []
grep
grep -E
egrep

つまり、次のような使い方はできません

$ grep 'x?' test.txt     #xが0回以上繰り返される場合にマッチする
$ grep 'y+' test.txt     #yが1回以上繰り返される場合にマッチする
$ grep '(z|Z)' test.txt  #zかZにマッチする
$ grep '{1,3}t' test.txt #t,tt,tttにマッチする

grepの-Eオプションを使えばOK.

$ grep -E 'x?' test.txt     #xが0回以上繰り返される場合にマッチする
$ grep -E 'y+' test.txt     #yが1回以上繰り返される場合にマッチする
$ grep -E '(z|Z)' test.txt  #zかZにマッチする
$ grep -E '{1,3}t' test.txt #t,tt,tttにマッチする

結論:egrepは不要です。grep -Eだけで問題なし

今回は以上です。

参考になりましたら幸いです。

Blog TOP  Linuxコマンドを勉強したい人向け|Linuxの使い方 記事まとめ

Linux&Linuxコマンドを勉強したい人向けの記事もくじ

用語解説・技術一般

  "UNIXとLINUX"の違いについて解説します
  CUIとGUIの違い・特徴について解説します

サーバリソースを確認するコマンドの使い方

  【Linux】CPU使用率を確認する3つの方法を解説します
  【Linux】topコマンドで,CPU消費の原因を特定する方法
  【Linux】ps実行時に-efオプションを付ける理由について
  【Linux】メモリ使用率を確認する|容量・空きの確認も
  【Linux】ディスク容量を確認する|ディスク容量監視も

ファイル操作に関するコマンドの使い方

  【Linux】ファイルの行数をカウントする方法を解説
  【Linux】文字コード変換ならiconvコマンド1択です
  【Linux】/dev/nullを、エンジニアが使う2つの目的
  【Linux】findのexecオプションの使い方とその注意点
  【Linux】findの結果から圧縮ファイルを作るコマンド
  【Linux】hostsの場所はどこ?→/etc/hostsにあります
  【Linux】touchコマンドで,時刻更新&空ファイル作成

Linux管理者用コマンドの使い方

  【Linux】再起動コマンド(shutdown)の使い方と注意点

よく使う便利なコマンドの使い方

  【Linux】改行なしでechoコマンドを使う時の -nオプション
  【Linux】sleepコマンドの使用例と注意点について解説する
  【Linux】rmコマンドでディレクトリを削除する方法を解説
  【Linux】ファイルを削除するコマンド2選【rm以外もあり】
  【Linux】awkの区切り文字を指定する,-Fオプションを解説
  【Linux】sedで文字列の置換をするeオプションを解説する
  【Linux】dateコマンドのフォーマットとその便利な使い方
  【Linux】大文字から小文字に変換する方法【小文字から大文字も】

シェルの便利機能

  【Linux】コマンド履歴を検索する【Ctrl+r】