ログ ファイル (application.log) には、次の通常文字と特殊文字の文字列が複数行に含まれている可能性があります。
*^%Q&$*&^@$&*!^@$*&^&^*&^&
この特殊文字列を含む行番号を検索したい。
grep '*^%Q&$*&^@$&*!^@$*&^&^*&^&' application.log
上記のコマンドは結果を返しません。
行番号を取得するための正しい構文は何ですか?
ログ ファイル (application.log) には、次の通常文字と特殊文字の文字列が複数行に含まれている可能性があります。
*^%Q&$*&^@$&*!^@$*&^&^*&^&
この特殊文字列を含む行番号を検索したい。
grep '*^%Q&$*&^@$&*!^@$*&^&^*&^&' application.log
上記のコマンドは結果を返しません。
行番号を取得するための正しい構文は何ですか?
オプションgrep
を使用して、入力を固定文字列として扱うように指示し-F
ます。
grep -F '*^%Q&$*&^@$&*!^@$*&^&^*&^&' application.log
-n
行番号を取得するにはオプションが必要です。
grep -Fn '*^%Q&$*&^@$&*!^@$*&^&^*&^&' application.log
私のために働いたものは次のとおりです。
grep -e '->'
-e は、次の引数がパターンであり、引数として解釈されないことを意味します。
出典: http://www.linuxquestions.org/questions/programming-9/how-to-grep-for-string-769460/
grep -n "\*\^\%\Q\&\$\&\^\@\$\&\!\^\@\$\&\^\&\^\&\^\&" test.log
1:*^%Q&$&^@$&!^@$&^&^&^&
8:*^%Q&$&^@$&!^@$&^&^&^&
14:*^%Q&$&^@$&!^@$&^&^&^&