Linux|grepとegrepの違いは?【結論:grepだけ使えばOK】
こんにちは。
普段は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】大文字から小文字に変換する方法【小文字から大文字も】
シェルの便利機能