ファイルの分割

テキストファイルを複数に分割する

同等のperlプログラムへ

プログラム

プログラムは以下のようになります。 以下をタイプして、適当な名前でセーブしてください。ここでは div.awk という名前でセーブしたことにして話を進めます。
BEGIN {
	if ( ARGC != 3 ) {
		printf( "Usage:gawk -f div.awk num=[number] filename\n" );
		exit;
	}
}
{
	key = NR % num;
	outfile = sprintf( "%s.%d", ARGV[2], key + 1 );
	printf( "%s\n", $0 ) > outfile;
}

入力データ

以下のようなファイル num.txt があるとします。
1
2
3
4
:
99

実行結果

ここでは、awk処理系としてgawkを利用し、 また、OSはWindowsを利用していると 仮定します。 DOS prompt 上で、
c:\awk> gawk -f div.awk num=2 num.txt
とタイプします。 num.txt.1、num.txt.2という二つのファイルが作成されます。 もし三つに分割したい場合は
c:\awk> gawk -f div.awk num=3 num.txt
とすればよいのです。
メニューに戻る
Tkensaku

TKENSAKU top へ

Copyright © 2004 TKEN