Linux Commands · 4 min read · Dec 16, 2025

Como dividir um grande arquivo de archive em vários arquivos pequenos usando o comando Split no Linux

Embora uma das principais razões para criar arquivos de archive seja a facilidade de manuseio e transferência, às vezes o próprio arquivo compactado é tão grande que se torna um pesadelo transferi-lo pela rede, especialmente quando a velocidade da rede é lenta.

Então, o que deve ser feito em casos como esses? Existe uma solução para esse problema? Bem, sim - uma solução é dividir o arquivo compactado em partes menores, que podem ser facilmente transferidas pela rede. No destino, você pode juntá-las novamente para obter o archive original.

Se a solução parece interessante e você quer entender exatamente como isso pode ser feito no Linux, você ficará feliz em saber que discutiremos todos os detalhes importantes passo a passo neste tutorial.

Antes de prosseguirmos, observe que todas as instruções e comandos mencionados neste artigo foram testados no Ubuntu 14.04.

Como dividir grandes arquivos de archive

Existe uma utilidade de linha de comando - chamada Split - que ajuda você a dividir arquivos em pedaços. Ele vem instalado por padrão na maioria das distribuições Linux, então você não precisa realizar etapas extras para baixá-lo e instalá-lo. A seguir está a sintaxe deste comando:

split [OPÇÃO]... [ENTRADA [PREFIXO]]

Aqui, ENTRADA representa o nome do arquivo que precisa ser dividido em partes menores, e PREFIXO é o texto que você deseja que seja prefixado ao nome dos arquivos de saída. OPÇÃO, no nosso caso, será -b para que possamos especificar o tamanho dos arquivos de saída.

Para entender o uso do Split através de um exemplo, você precisa primeiro ter um arquivo compactado que deseja dividir. Por exemplo, eu tinha o seguinte arquivo .zip de 60MB no meu caso:

Aqui está o comando Split em ação:

Então, como você pode ver, usando a opção -b, pedi ao comando Split para dividir o grande arquivo .zip em partes iguais de 20MB cada, fornecendo o nome completo do arquivo compactado, bem como o texto do prefixo.

Aqui está como verifiquei que o comando Split realmente fez o que foi solicitado:

Como é evidente a partir da saída na captura de tela acima, três arquivos com nomes incluindo o prefixo que forneci e pesando 20MB cada foram produzidos na saída.

Claro, além de arquivos .zip, você pode usar o método mencionado acima para dividir outros tipos de arquivos compactados também. Por exemplo, aqui está como usei o mesmo comando que discutimos antes para dividir um arquivo .tar.xz:

Como você deve ter entendido até agora, se você quiser dividir um arquivo em vários pedaços que devem ter tamanhos em MB, você precisa usar a letra M com o número que você fornece na linha de comando. E se - como no caso que acabamos de discutir - os arquivos devem ter tamanhos em KB, você deve usar a letra K.

Até agora, só usamos a opção -b oferecida pelo comando Split; isso porque ela faz o que queremos - dizer ao comando para dividir o arquivo de entrada com base no tamanho que segue essa opção na linha de comando. No entanto, dependendo do seu caso e necessidade, você pode querer usar algumas das outras opções que o comando Split fornece.

A seguir está a lista de opções juntamente com uma breve explicação do que elas fazem:

  • -a, –suffix-length=N: gerar sufixos de comprimento N (padrão 2)
  • –additional-suffix=SUFFIX: anexar um SUFIXO adicional aos nomes dos arquivos.
  • -b, –bytes=SIZE: colocar SIZE bytes por arquivo de saída
  • -C, –line-bytes=SIZE: colocar no máximo SIZE bytes de linhas por arquivo de saída
  • -d, –numeric-suffixes[=FROM]: usar sufixos numéricos em vez de alfabéticos. FROM altera o valor inicial (padrão 0).
  • -e, –elide-empty-files: não gerar arquivos de saída vazios com ‘-n’
  • –filter=COMMAND: escrever no shell COMMAND; o nome do arquivo é $FILE
  • -l, –lines=NUMBER: colocar NUMBER linhas por arquivo de saída
  • -n, –number=CHUNKS: gerar CHUNKS arquivos de saída.
  • -u, –unbuffered: copiar imediatamente a entrada para a saída com ‘-n r/…’

Até agora, discutimos apenas como dividir um grande arquivo de archive em várias partes menores. Não é preciso dizer que isso não tem utilidade até que você também saiba como juntá-las novamente para recuperar o arquivo compactado original. Então, aqui está como você pode fazer isso:

Não há uma utilidade de linha de comando especial para juntar os pedaços menores, já que o bom e velho comando Cat é capaz de lidar com essa tarefa. Por exemplo, aqui está como recuperei o arquivo Kaku-linux32.zip através do comando Cat:

Você pode extrair o archive recuperado e compará-lo com o original para verificar se nada mudou.

Conclusão

Se você é um usuário Linux, e seu trabalho diário envolve lidar com grandes arquivos compactados e compartilhá-los com outros pela rede, há boas chances de que você queira dividir um archive em alguns casos. Claro, a solução mencionada neste tutorial pode não ser a única disponível, mas com certeza é uma das mais simples e que consome menos esforço.

Caso você use uma abordagem diferente para dividir grandes arquivos de archive e depois juntá-los novamente, e queira compartilhar sua solução com outros, você pode fazê-lo nos comentários abaixo.

Share: X/Twitter LinkedIn

Receba novas postagens na sua caixa de entrada

Sem spam. Cancele a assinatura a qualquer momento.