ナンバリング

テキストファイルに行番号を付ける

同等のawkプログラムへ

プログラム

エディタを開き 以下をタイプして、適当な名前でセーブしてください。ここでは n.pl という名前でセーブしたことにして話を進めます。
while(<>) {
	s/[\r\n]//g;
	printf("%d,%s\n", $., $_ );
}
exit;

入力データ

入力データは、テキストファイルであればなんでもかまいません。 とりあえず、エディタを開き、以下のようなファイルを作成し、 dat1.txt という 名前でセーブしたこととします。
田中
佐藤
鈴木

実行結果

OSはWindowsを利用していると 仮定します。 DOS prompt 上で、
c:\perl> perl n.pl dat1.txt
とタイプします。
1,田中
2,佐藤
3,鈴木
と出力されるはずです。

応用

区切り文字を変える

今、行番号とデータはカンマで区切られています。これを別な文字、たとえば コロン(:) に変更するには、 エディタでn.pl を開き、 二行目の
	printf("%d,%s\n", $., $_ );
	printf("%d:%s\n", $., $_ );
に変更すればよいのです。

開始番号を変える

今、行番号は1から始まっています。これをたとえば100から始まるように するにはどうしたらよいのでしょうか? これもきわめて簡単です。 エディタでn.pl を開き、 二行目の
	printf("%d,%s\n", $., $_ );
	printf("%d,%s\n", $. + 100, $_ );
とすればよいのです。
メニューに戻る
Tkensaku

TKENSAKU top へ

Copyright © 2004 TKEN