1. ホーム
  2. grep

[解決済み] grep や ack が返す長いマッチング行を切り詰める方法

2022-11-29 15:28:39

質問

非常に長い行を持つことが多いHTMLファイルに対してackやgrepを実行したいのです。私は、繰り返し折り返される非常に長い行を見たくありません。しかし、長い行のうち、正規表現に一致する文字列を囲む部分のみを表示したいのです。Unix ツールの任意の組み合わせを使って、どのようにこれを得ることができますか?

どのように解決するのですか?

grep オプションを使用することができます。 -o を使うこともできますし、パターンを ".{0,10}<original pattern>.{0,10}" に変更することで、その周りのコンテキストを見ることができます。

       -o, --only-matching
              PATTERNにマッチする行の部分のみを表示します。

...または -c :

       -c, --count
              通常の出力を抑制し、代わりに各入力ファイルにマッチした行の数
              を表示します。 v, --invert-match オプションを指定すると (
              を参照)、マッチしない行を数える。