LoginSignup
57
63

More than 3 years have passed since last update.

sed, awk, grepの使い分け

Last updated at Posted at 2017-07-17

概要

初心にかえってsed, awk, grepのざっくりとした使い方を記述する

sed

  • 文字列を置換
例1: sample.logファイル内のabcをdefに変換
sed s/abc/def/g sample.log

awk

  • 文字列を抽出
  • 区切り文字を-Fで指定(指定しないとスペース区切りになる)
例2: コロン区切りのsample2.logファイル内で左から3番目の文字列を抽出
awk -F':' '{print $3}' sample2.log
例3: スペース区切りのsample3.logファイル内で左から3番目の文字列を抽出
awk '{print $3}' sample3.log

grep

  • 文字列を検索
例4: 文字列abcが含まれる行を検索する
grep abc sample4.log

応用

  • パイプでつなげると、出力結果を渡すことができ、複数の処理をつなげることができる
例5: 文字列abcが含まれる行を検索後それぞれの行に対して文字列aaaをbbbに変換、
    さらにスペース区切りで左から2番目と3番目の文字列を抽出する
cat sample5.log | grep abc | sed s/aaa/bbb/g | awk '{print $2, $3}'
57
63
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
57
63