2014年7月5日土曜日

Windows 標準の機能(makecab コマンド)でファイルを分割する

使いなれたファイル分割ソフトが使えない環境でも、makecab コマンドで cab ファイル形式に分割できます。

<使い方>
最小限の設定で使う場合の設定手順

1.設定ファイル (directives_file) を作る

例えば、data.ddf というファイルとします。
.Set MaxDiskSize=CDROM                ; Default is 1.44M floppy
.Set CabinetNameTemplate=data.*.cab   ; Default is *.cab( * は連番になる)
.Set DiskDirectoryTemplate=           ; Default is disk*( * は連番になる)
.Set Compress=OFF                     ; Default is ON(圧縮効果があるファイルならどうぞ)
source-file-name.zip                  ; 分割するファイル、もちろん絶対パスや "" で囲む場合もあり

MaxDiskSize は定型サイズ (1.44M / 1.25M / 1.2M / 720K / 360K / CDROM) が使えます。だが CDROM 以外は全部小さすぎるので、適当なサイズを指定するならば Byte で指定することになります、(M / K の単位は定型サイズしか使えなかった。)

DiskDirectoryTemplate は分割した cab ファイルが入るサブディレクトリがいらないならば、空を指定します。

2.コマンドを実行

makecab /F data.ddf

data.*.cab とともに、setup.inf、setup.rpt ファイルも出力されます

3.分割したファイルを結合

1番目の cab ファイルをダブルクリックして目的のファイルを展開すれば、ファイルが結合された状態で展開されます。


関連する資料のリンク

コマンドライン リファレンス (Makecab)
http://technet.microsoft.com/ja-jp/library/hh875545.aspx

directives_file のパラメータ概要
Microsoft Cabinet Format
http://technet.microsoft.com/ja-jp/library/bb417343.aspx#var