Eu tenho um arquivo grande no Wondows e preciso transportá-lo para um servidor Linux através da pasta linux /tmp que tem capacidade limitada apenas.
Para isso criei um zip com 7zip no meu host Windows (onde não consigo instalar nenhuma ferramenta adicional, devido a restrições da empresa) e dividi-o em 4 arquivos.
largefile.zip.001
largefile.zip.002
largefile.zip.003
largefile.zip.004
extrair o principal ~.zip.001
com 7zip no Windows novamente, parece extrair os dados dos outros arquivos ~.002-.004
. Então de alguma forma reconhece a relação entre eles.
agora, como posso conseguir a mesma coisa no destino Linux? gunzip largefile.zip.001
bem como gunzip largefile.zip.00{1,2,3,4}
resultou em um unexpected end of file
erro.
Acabei de não identificar a opção certa man gunzip
ou alguém pode recomendar alguma outra coisa para fazer isso?
editar: Não consigo instalar nada além do básico (e o mencionado abaixo 7zip
para Linux não é um deles) no meu servidor rhel devido à falta de sudo
privilégios.
Por que você não usa o 7zip no Linux?
Os pacotes p7zip estão no repositório Universe no Ubuntu, então certifique-se de habilitá-lo usando este comando:
Use o seguinte comando para instalar o suporte 7zip em distribuições baseadas em Ubuntu e Debian.
No terminal, você pode extrair um arquivo zip dividido usando este comando:
foi assim que consegui fazer isso.
no meu laptop local do Windows com git bash
divida o arquivo original descompactado com
split -b 2500m -a 2 -d large_file.sql large_file.sql-
comprimir todos eles com ...
for i in $(seq 0 7) ; do gzip large_file.sql-0"${i}" ; done
manobre-os para o meu servidor rhel (usando WinSCP)
No meu servidor rhel
for i in $(seq 0 7) ; do echo gunzip large_file.sql-0${i}.gz ; done
cat large_file.sql-0{0,1,2,3,4,5,6,7} > /path/to/large_file.sql
Não tenho 1000% de certeza se a parte cat (#5) teria funcionado com um arquivo binário em vez de texto, mas acho que deveria.