問題①
sample.logから「error」を含む行を探して下さい。
回答
grep "error" sample.log出力例:
[2025-10-05 10:00] error: failed to connect
解説:grepは指定した文字列を含む行を表示します。部分一致で抽出されます。
問題②
「Error」「ERROR」など大文字小文字を無視して検索して下さい。
回答
grep -i "error" sample.log解説:-iオプションで大文字・小文字を区別せずに検索できます。
問題③
sample.logにtimeoutを行番号も表示して下さい。
回答
grep -n "timeout" sample.log出力例:
42:connection timeout detected
解説:-nで行番号付きで表示されます。後で編集や確認がしやすくなります。
問題④
sample.log から「INFO」を含まない行だけを抽出する
回答
grep -v "INFO" sample.log解説:-vは否定検索。指定した文字列を含まない行を抽出します。
問題⑤
複数のログファイルから、"failed"を一括検索して下さい。
回答
grep "failed" *.log
出力例:
app1.log:[2025-10-05] failed to start app2.log:[2025-10-05] failed to connect
解説:ワイルドカードで複数ファイルを対象にできます。ファイル名も表示されます。
問題⑥
sample.logから日付形式(YYYY-MM-DD)の行を検索して下さい。
回答
grep -E "[0-9]{4}-[0-9]{2}-[0-9]{2}" sample.log
出力例:
2025-10-05 system rebooted
解説:-Eで拡張正規表現を使用。{n}は繰り返し回数を指定します。
問題⑦
sample.logに「ERROR」が何回出現したか数えて下さい。
回答
grep -c "ERROR" sample.log出力例:
5
解説:-cは一致した行数をカウント。統計的な確認に便利です。
問題⑧
result.txtから行全体が「OK」と一致する行だけ抽出して下さい。
回答
grep -x "OK" result.txt
出力例:
OK
解説:-xは行全体が一致する場合のみ抽出。部分一致を避けたいときに使います。
問題⑨
sample.logから「error」を含む行の前後も表示して下さい。
回答
grep -C 2 "error" sample.log
出力例:
[2025-10-05 09:58] checking connection [2025-10-05 10:00] error: failed to connect [2025-10-05 10:01] retrying...
解説:-Cは前後の行数を指定して表示。-A(後のみ)や-B(前のみ)もあります。
問題⑩
sample.logから"error"に色を付けて表示して下さい。
回答
grep --color=auto "error" sample.log
解説:--color=autoで一致部分に色が付きます。視認性が向上し、デバッグ効率もアップ。