FNR = 現在読み込み中のファイルから読み込んだ行数 - AWK
○Gawk on Windows ○Gawk ○mawk32 ○Mawk ○awk
現在読み込み中のファイルから読み込んだ行数です。o AWKプログラム内でファイルを指定して読み込んだ分は、行数に数えません。
**** 書式
--------
FNR
もしくは
FNR = 行番号
--------
o FNRは変数です。
o 行番号 -- 好きな数字を入れる事が出来ます。
+ 小数点以下のある値を入れると、Gawkは整数に丸めます。
**** 使用例
--------
{
print "只今、ファイル「" FILENAME "」の " FNR "行目です。ミクさん。";
}
--------
o 行末のセミコロンは、C言語の書き方に合わせました。無くても動きます。
**** 機能
o 現在読み込み中のファイルから読み込んだ行数です。
+ パターンに一致しない行も、読み込んでいたら数えます。
+ 途中でexitすると、exit以降読み飛ばした行は数えません。
o AWK実行時に入力ファイルを複数指定した時、現在読み込み中のファイルのみ数えます。
o getlineを使って読み込む場合
+ ファイルを指定せずに読み込んだ分は、行数に数えます。
+ ファイルを指定して読み込んだ分は、行数に数えません。
+ ファイル名に FILENAME (= 読み込み中のファイル名)を指定しても、行数に数えません。
** 処理系に依存する動作
o NR = 1.5 のように、小数点以下を持つ値を設定した場合
+ Gawkは整数に丸めます。この場合は、1になります。
+ mawkとoriginal-awkは、1.5のまま設定します。
**** メモ
o 複数ファイルを読み込んでいて、入力ファイルから読み込んだ行数の合計を知りたい時は、NRを使います。
**** 確認した処理系
o Gawk on Windows 3.1.7
o Gawk for Windows 3.1.6
o mawk MBCS (32bit版) 1.3.3
o Mawk for Windows 1.3.3
o original = the one true awk(updated May 1, 2007)
==
関連ページ:
▼AWKの入出力関数とコマンド実行機能(▼ABC順)
▼AWKプログラムを書く(▼ABC順)
▼AWK
▼制作メモ
> NR = これまでに読み込んだ行数
ERRNO = 入出力系の最新エラーメッセージ(Gawk専用)
FS = 読み込んだ行を列に分割する時の区切り文字
+
NF = 最後に読み込んだ行の列数
FILENAME = 現在読み込み中ファイルの名前
$0 = 最後に読み込んだデータ、1行分
(2010年8月16日追加。手動更新した場合)