【Linuxコマンド:awk】ファイルの~行目から~行目を抜き出す方法

どうもこんにちは。三宮です。
 
ログの調査時に、必要な個所のみ切り取って連携したい場合がありますよね。そんな際に私がよく使っているawkコマンドをメモしておきます。

ファイルの~行目から~行目を抜き出す

sample.txtファイルの、5行目から10行目を抜き出して出力する場合

cat sample.txt | awk “NR==5,NR==10 {print}”

ファイルから一致している文字列を含む行を抜き出す

result.txtファイルの、”bash”文字列が含まれる行を出力する場合

awk ‘/bash/ {print}’ result.txt

ファイルの最初から~行目までを抜き出す

sample.txtファイルの、最初から8行目までを抜き出して出力する場合

cat sample.txt | awk ‘NR<=8 {print}'

ファイルの~行目以降を抜き出す

sample.txtファイルの、8行目以降を抜き出して出力する場合

cat sample.txt | awk ‘NR>8 {print}’

よく使うawkオプション

変数名 内容
-f ファイル名 awkコマンドが書かれたファイルを指定する。
-F 区切り文字 出力する内容を指定した区切り文字で表示する。

よく使うawkの組み込み変数

変数名 内容
NR 処理しているレコードを含む総レコードの行数。
RS 読み込み時のレコード行数の区切り文字。
FNR 処理しているファイルのレコード行数。
FILENAME 処理しているファイル名。

最後に

便利なコマンドは今後もまとめていこうと思います。
それではまた。
 
 
 
 
《関連記事》

tailコマンド
技術
2023.6.16(Fri)

【Linuxコマンド:tail】ログローテーションするファイルをtailする方法

#ツール#コマンド

chmodコマンド
技術
2023.6.13(Tue)

【Linuxコマンド:chmod】ファイルのみ、フォルダのみ権限を再帰的に変える方法

#ツール#コマンド

vmstatコマンド
技術
2023.6.7(Wed)

【Linuxコマンド:vmstat】vmstatコマンド結果の内容をまとめました

#ツール#コマンド

記事をシェア
MOST VIEWED ARTICLES