
Eu tenho um arquivo grande (8GB por exemplo). Como posso dividi-lo em várias partes, digamos 3 partes iguais, e depois disso como faço para integrá-las posteriormente?
Responder1
Existem várias maneiras de fazer isso. Vamos começar com os básicos.
Usando odividiregatocomandos:
Digamos que tenho uma imagem muito grande (10 MB). Tudo que faço é:
split --bytes=1M /path/to/image/image.jpg /path/to/image/prefixForNewImagePieces
e então para montar eu uso cat:
cat prefixFiles* > newimage.jpg
Por exemplo:
Supondo que estou dentro da pasta onde está a imagem:
split --bytes=1M myimage.jpg new
se a imagem estiver dentro de um diretório chamado images você também pode fazer isso:
split --bytes=1M images/myimage.jpg new
Se a imagem estiver dentro do diretório /home/cyrex/images você pode fazer isso:
split --bytes=1M /home/cyrex/images/myimage.jpg new
(Em todos os casos acima, ele será dividido myimage.jpg
em pedaços de 1 MB e prefixará o nome dos pedaços com a palavra novo. Assim, eles ficariam como newaa
, newab
, newac
, newad
...)
Se você estiver dividindo umArquivo de textoe quiser dividi-lo por linhas você pode fazer isso:
split -l 1000 book.txt new
O que dividirá o arquivo de texto em arquivos de saída de 1000 linhas cada. Esta é outra maneira de dividir um arquivo e é usada principalmente para arquivos de texto como logs, dumps sql, arquivos csv, etc.
Então eu os mesclo
cat new* > newimage.jpg
Esta é uma maneira. Você pode até alterar o tamanho das peças divididas. Basta alterar a parte que diz --bytes=1M
para --bytes=1K
1 kilobyte ou 1G para giga, ou outro número como --bytes=4K
para peças de 4 KB.
UsandoNáutilo
Outra forma é a opção de compactação na interface gráfica do Nautilus. Dá a você a opção de dividir o arquivo ou arquivos que deseja compactar em tamanhos menores de megabytes. É simples e fácil.
Ainda outra maneira é usar7z
Supondo que você tenha uma imagem ISO chamada, ubuntu.iso
você poderia fazer o seguinte:
7z a -v5m -mx0 ubuntu.7z ubuntu.iso
Isso criará arquivos de tamanho 5 MB a partir do formato ubuntu.iso
. O -v5m
é o tamanho do volume para que você possa alterá-lo para 10, 12, 1, 3 e também m pode ser alterado para k para kilobytes, etc; a -mx0
opção diz ao 7-Zip para não usar compactação, ou seja, apenas dividir os dados em partes.
Para extrair basta fazer
7z x ubuntu.7z.001
desta forma você extrai o primeiro arquivo e o 7z começa a extrair os arquivos seguintes em ordem. Você também pode fazer
7z e ubuntu.7z.001
que tem o mesmo efeito aqui.
Responder2
Usando split -b
o número apropriado, você pode obter três peças.
O número pode ser:
size=$(wc -c <"file name")
one_third=$((size/3+1))
Para remontar, use cat
cat "file name"* > "file name"
As páginas do manual ajudarão a preencher os detalhes.
Responder3
Gnomo dividido?http://gnome-split.org/
GNOME Split é uma ferramenta que permite dividir arquivos e mesclá-los novamente. Ele é escrito em Java e usa uma interface de usuário GTK+ (graças ao projeto java-gnome). O objetivo é oferecer uma implementação nativa de projetos similares que possam lidar com múltiplos formatos de arquivo (por exemplo, Xtremsplit).
http://www.omgubuntu.co.uk/2010/08/split-large-files-easily-in-ubuntu-with-gnome-split/
Responder4
Um utilitário gratuito de divisão e mesclagem de arquivos desenvolvido em Java. É um aplicativo de tamanho pequeno que permite ao usuário dividir qualquer tipo de arquivo em tamanhos menores em KB, MB ou GB.
Ele está disponível para Linux e também para Windows.
WoodCutter oferece 3 maneiras de mesclar os arquivos originais. WoodCutter cria um arquivo de mesclagem que pode ser processado pelo aplicativo WoodCutter para unir todos os arquivos novamente. Caso o receptor dos arquivos divididos não tenha o WoodCutter instalado, o arquivo original também pode ser obtido, pois o WoodCutter também cria um arquivo em lote e um arquivo de script Shell para mesclar os arquivos novamente. O arquivo em lote será utilizado na plataforma Windows e o script Shell será utilizado nas plataformas Linux.