LoginSignup
8
11

More than 5 years have passed since last update.

バイナリファイルの分割結合

Posted at

分割 (split)

詳細は

man split

srcを30MBずつに分割

split -b 30M src dst.
dst.aa
dst.ab
...
dst.zz

suffixを数字に指定 (-d)

split -d -b 30M src dst.
dst.01
dst.02
...
dst.99

suffixの桁数を指定 (-a)

split -a 3 -d -b 30M src dst.
dst.001
dst.002
...
dst.999

結合

普通にcatで結合

cat dst.* > dst

例 (分割 & 結合)

$ ls -lh # カレントディレクトリに100MBのsrcというファイルがある
total 100M
-rw-r--r-- 1 usr grp 100M Dec 21 06:25 src

$ split -b 30M src dst. # srcを30MBずつに分割

$ ls -lh
total 100M
-rw-r--r-- 1 usr grp  30M Dec 21 06:29 dst.aa
-rw-r--r-- 1 usr grp  30M Dec 21 06:29 dst.ab
-rw-r--r-- 1 usr grp  30M Dec 21 06:29 dst.ac
-rw-r--r-- 1 usr grp  10M Dec 21 06:29 dst.ad
-rw-r--r-- 1 usr grp 100M Dec 21 06:25 src

$ cat dst.* > dst # 結合

$ ls -lh
total 300M
-rw-r--r-- 1 usr grp 100M Dec 21 06:29 dst
-rw-r--r-- 1 usr grp  30M Dec 21 06:29 dst.aa
-rw-r--r-- 1 usr grp  30M Dec 21 06:29 dst.ab
-rw-r--r-- 1 usr grp  30M Dec 21 06:29 dst.ac
-rw-r--r-- 1 usr grp  10M Dec 21 06:29 dst.ad
-rw-r--r-- 1 usr grp 100M Dec 21 06:25 src

$ md5sum src dst # 正しく分割結合できているか確認
2f282b84e7e608d5852449ed940bfc51  src
2f282b84e7e608d5852449ed940bfc51  dst
8
11
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
8
11