OK、正規表現、sed、awk、テキスト三銃士を学習したら、残るは grep だけです。一緒に考えてみましょう
まず grep とは何かを見てみましょう
Baidu it
英語: グローバル検索正規表現 (RE) とその行を出力します
中国語: 包括的検索正規表現 (RE) と出力line
grep は、正規表現を使用してテキストを検索し、一致する行を出力する強力なテキスト検索ツールです。
grep ファミリーには、grep、egrep、fgrep が含まれます
原理
grep の原理について教えてください。
ファイルリストまたは標準入力を与えた後、grep は 1 つ以上の式に一致するテキストを検索し、
に一致する (または一致しない) 行またはテキストのみを出力します
実際、率直に言うと、 grep のプロセスは sed のアドレス指定プロセスとあまり変わりません。
sedの処理プロセスを参照して、grepの処理プロセスをまとめます
テキストの行をパターン空間に読み込みます
指定された規則性に基づいてテキストの行を検索し、一致するコンテンツがあるかどうかを確認します
もしあれば、行全体が一度に一致します。 なし。行はそれ以上処理されません。行を削除して次の行を読み取ります。一致が成功した場合は、行を出力して次の行を読み取ります。
grep は実際には sed の簡易版であるようですが、正常に一致した行は自動的に出力されます。ただし、sed は出力する p コマンドを指定する必要があり、指定しないとテキスト全体が出力されます。 もちろん、grep のオプションには多くのパラメータが用意されており、sed にはない機能も数多くあります。
OK、これで、grep に残っているコンテンツは 2 つだけです。1 つは grep のパラメーターで、もう 1 つは通常のアドレス指定です
規則性と言えば、grep での規則性と sed の使用です。 , awk は少し異なり、sed または awk の場合は // を使用して真ん中を囲みます。 grep では、
文法形式は必要ありません
grep [オプション] パターン [ファイル...]
grep [オプション] [-e パターン] -f []
grep -E はegrep と同等、 grep -F は fgrep と同等、 grep -r は rgrep と同等です
grep の [オプション] を見てみましょう
[オプション] を紹介する過程で、メタキャラクターを練習するための小さな例をいくつか示しますgrep、egrep、fgrep の使用。
作者は頻繁に使用されると思われるパラメータに色を使用しており、マークも同じです
grep -V これは grep バージョンで見ることができます
テストテキスト
John Daggett, 341 King Road, Plymouth MA
Alice Ford, 22 East Broadway, Richmond VAOrville Thomas, 11345 Oak Bridge Road, Tulsa OK
Terry Kalkas, 402 Lans Road, Beaver Falls PA
Eric Adams, 20 Post Road, Sudbury MA
Hubert Sims, 328A Brook Road, Roanoke VA
Amy Wilde, 334 bakery Pkwy, Mountain View CA
Sal Carpenter, 73 6th Street, Boston MA
ansible は ansible です
saltstcak は (ansible) よりも強力です、へへ
ansibl は ansible です
選択マッチャーの数
マッチ制御
出力制御
出力行プレフィックス制御
コンテンツ制御
その他のオプション
終了ステータス
マッチング成功、終了ステータスコードは0、マッチング失敗、終了ステータスコードは1、マッチングエラー発生、終了コードは2