5 GNU の split (暇つぶし?)

Mathematica 10.4 をインストールしようと思い立った。 ダウンロードして、いつものように USB メモリに入れて、 「さあ、あちこちインストールしよう」と早速とりかかったら、 マウント出来ない。 .dmg ファイルが壊れている。コピー・ミス? …原因はなんと、ついにファイルのサイズが 4GB を超えたので、 FAT32 の USB メモリにはコピー出来ないから、だった。 うわあ。

USBメモリをフォーマットし直そうかとも考えたが… (Windows との互換性がなくなる、というデメリットもある)

まあ、古い人間なので、ファイルを分割してみよう、と考えた。 split -b 2G ... あれ?エラーになる。 Mac OS X の split は GNU の split ではないんだ。

OS 付属の split で split -b 2000m Mathematica_10.4.0_Japanese_OSX_LabVersion.dmg としたら、 2097152000 バイト。これは $ 1000\times 2^{31}$ . そうか、2GB にしたければ、 split -b 2048m Mathematica_10.4.0_Japanese_OSX_LabVersion.dmg とすべきだったか。

うーん、やはり GNU のにしよう。
sudo port install coreutils
gsplit -b 2GB ~/Mathematica_10.4.0_Japanese_OSX_LabVersion.dmg
あれ?2000000000 バイトだ。
gsplit -b 2G ~/Mathematica_10.4.0_Japanese_OSX_LabVersion.dmg
とするのでした。

こうすると、xaa, xab, xac という3つの ファイルが出来る。
cat xaa xab xac > Mathematica_10.4.0_Japanese_OSX_LabVersion.dmg
とすると連結して Mathematica_10.4.0_Japanese_OSX_LabVersion.dmg が再生される。

桂田 祐史
2018-03-01