O comando split divide um arquivo grande em pequenas partes de acordo com um padrão informado. Essas pequenas partes podem ser remontadas com o comando cat.
Se não for informado um prefixo, todos os pedaços de arquivos criados serão nomeados na ordem: xaa, xab, xac, e assim por diante.
Para o exemplo vamos criar dois arquivos, um de 1MB e o outro de 10MB
# dd if=/dev/zero of=/tmp/um bs=1024 count=1000 1000+0 registros de entrada 1000+0 registros de saída 1024000 bytes (1,0 MB) copiados, 0,00240915 s, 425 MB/s
# dd if=/dev/zero of=/tmp/dez bs=10 count=1M 1048576+0 registros de entrada 1048576+0 registros de saída 10485760 bytes (10 MB) copiados, 1,01557 s, 10,3 MB/s
# split -b 300KB /tmp/um um-
# split -b 3M /tmp/dez dez-
# du -h {um-*,dez-*} 296K um-aa 296K um-ab 296K um-ac 124K um-ad 3,0M dez-aa 3,0M dez-ab 3,0M dez-ac 1,0M dez-ad
Remontando:
# cat um-* > um
# cat dez-* > dez
# cat um dez > onze
# du -h {um,dez,onze}
1000K um
10M dez
11M onze
Referências: