split
圧縮と転送
書き方
split -b <size> <file> <prefix>大きなファイルをいくつもの断片に切ります。既定は 1000 行ずつという行数での分割なので、大きさで切るなら `-b 100M` のように書き、接頭の語を与えないと断片は xaa・xab となり、戻すのは `cat part_* > file` 一つで済みますが、それは接尾が順に並ぶからこそです。
よく使うオプション
| オプション | 意味 |
|---|---|
| -b 100M | Pieces of a fixed size; K, M and G suffixes work on both platforms. |
| -l 1000 | Split by line count instead, which is the default behaviour at 1000 lines. |
| -n 4 | Cut into exactly four pieces. |
| -d | Numeric suffixes instead of aa, ab, ac. |
| -a 3 | Suffix length, when two letters are not enough. |
| --additional-suffix=.part | Append an extension to each piece. GNU only. |
| <prefix> | Optional, and without it the pieces are named xaa, xab, xac. |
例
split -b 100M big.tar.gz part_Produces part_aa, part_ab and so on.
cat part_* > big.tar.gzReassemble in glob order, which is why the suffixes are sorted.
split -l 5000 -d data.csv chunk_Five thousand lines per piece, with numeric suffixes.
まとめることと縮めることは別の仕事です。tar がまとめ、gzip が縮め、.tar.gz はその両方です。
読み方
- 角括弧 [ ] は省いてよい部分です。
- 三点 … は複数並べられるという意味です。
- オプションは大文字小文字を区別します — -r と -R が別物のコマンドもあります。
よくある質問
Q. split は何をしますか。
大きなファイルをいくつもの断片に切ります。既定は 1000 行ずつという行数での分割なので、大きさで切るなら `-b 100M` のように書き、接頭の語を与えないと断片は xaa・xab となり、戻すのは `cat part_* > file` 一つで済みますが、それは接尾が順に並ぶからこそです。
Q. どう打ちますか。
split -b <size> <file> <prefix> — 角括弧は省いてよい部分です。
Q. よく使うオプションはいくつですか。
ここにまとめたのは7個です。全部は man split にあります。このコマンドは圧縮と転送の仲間です。
関連するコマンド
man ページ: man split