splitでハマった事例

http://itoshi.tv/d/?date=20040414#p03

splitは、ファイルを指定した長さで切るのにとっても便利。ハマることがあるので注意が必要。例えば、

% split -l 100 foo.txt

とすると、foo.txtを100行毎に分割したxaa, xab, ...というファイルができる。xzzまでいくと、zaaというファイルを使ってくれる、と日本語マニュアルにあるけど、それは(少くとも GNUのversion4.5.3では)ウソ。'info split'とかすると、そのような記述は見当たらない。この場合、xzzになった時点で「接尾辞を使い果たしました」というエラーメッセージが出て終了してしまう。これを避けるためには、'split --help'すればわかるように、

% split -l 100 --suffix-length=10 foo.txt

等と、'--suffix-length'あるいは'-a'オプションを使用してやる必要がある。これで一時、泣きを見たことがあります。