1. ホーム
  2. unix

[解決済み] Unixの特殊文字用grep

2022-03-01 20:36:50

質問

ログファイル(application.log)に、以下のような通常の文字と特殊文字を含む文字列が複数行に渡って存在する可能性があります。

*^%Q&$*&^@$&*!^@$*&^&^*&^&

この特殊文字列を含む行番号を検索したい。

grep '*^%Q&$*&^@$&*!^@$*&^&^*&^&' application.log

上記のコマンドは結果を返しません。

行番号を取得するための正しい構文は何でしょうか?

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

伝える grep を使用して、入力を固定文字列として扱います。 -F オプションで指定します。

grep -F '*^%Q&$*&^@$&*!^@$*&^&^*&^&' application.log

オプション -n は行番号を取得するために必要です。

grep -Fn '*^%Q&$*&^@$&*!^@$*&^&^*&^&' application.log