自己紹介
私は現在webエンジニアとして働く2年目のエンジニアです。
派遣という業務形態で働いており、現在参画している企業様は自社開発のサービスを運営しています。
この現場にアサインしてから、開発・保守運用チームに在籍しており、今まで触れてこなかったシステムの保守運用の観点やネットワークの知識について触れるようになりました。
Qiitaでは備忘録や学習記録として記事を投稿していきます。
拙い文章ですが、どうぞよろしくお願いいたします。
webシステム運用でよく使用するコマンド「grep」について
今回はシステム運用をする様になってからよく使用する様になったコマンド、「grep」コマンドについてまとめたいと思います。
grep:ファイルの中から文字列を探す
grep
は、指定したファイルの中から、特定の文字列やパターンを含む行を抽出して表示するコマンドです。ログファイルからエラーメッセージを探したり、設定ファイルの中から特定の記述を見つけ出したりする際によく使用します。
使用方法
grep "検索したい文字列" ファイル名
使用例:
Nginxのエラーログから「error」という文字列を含む行を探す。
grep "error" /var/log/nginx/error.log
また、以下のようなオプションもよく使用します。
grep -i:大文字・小文字を区別せずに検索
grep -r:指定したディレクトリ以下を再帰的に検索
(再起的の意味:https://qiita.com/OTAGRAMER/items/0feab9fbf02e07a44915)
grep -v:指定した文字列を含まない行を表示
grep -e:複数の検索パターンを指定したいときに使用
以下の例では404エラーと500エラーを同時に検索している
(例:zcat access.log.gz | grep -e "404" -e "500")
まとめ
運用上ではgrepコマンドを使用する機会が毎日あります。
例えば障害が起きた際も、ファイルがどの様なエラーを調べるときにgrepでerrorを検索し、
該当時間にどの様なエラーが起きているかを見て情報を追ったりします。
エンジニアは調べながら進められればいいとよく言われますが、障害など急務な対応の際に
「どんなコマンド打てばいいんだっけ,,,?」みたいな状態はよろしくありません。
最低限使うコマンドはすぐ使えるよう学習し、身につけておいた方がbetterです(自分に言い聞かせてます)
私はまだまだ未熟なエンジニアですが、これからどんどん備忘録、学習記録を投稿していきます!
記事ご覧いただき、ありがとうございました🙇♂️