[FUG-BR] Uso de opções do tar no FreeBSD

Renato Botelho rbgarga em gmail.com
Quinta Maio 28 11:35:27 BRT 2015


> On May 28, 2015, at 11:01, Eduardo Lemos de Sa <eduardo.lemosdesa at gmail.com> wrote:
> 
> Caríssimos(as)
> 
> É um tanto embaroçoso confessar, depois de muito tempo usando o comando tar
> para comprimir e arquivar diretórios, que eu estou apanhando da sintaxe;
> 
> tar -zcvf fontes-10.1.tgz /usr/src /usr/obj
> 
> funciona muito bem quando eu arquivo os fontes e os binários gerados em um
> atualização (a ideia é replicar isto para outras máquinas, sem ter de fazer
> um svn, make buildworld e make buildkernel em cada uma delas). O problema é
> que o arquivo gerado é grande (1.2 Gbyte) e engloba os arquivos fontes que
> estão no /usr/src/.svn . Como eu não preciso deles nas outras máquinas, eu
> gostaria de não incluí-los no fontes-10.1.tgz, então eu digitei:
> 
> tar -zxvf fontes-10.1.tgz /usr/src /usr/obj --exclude /usr/src/.svn
> 
> e as suas variantes (mudando a posíção do --exclude /usr/src/.svn na linha
> de comando). Em todos os casos, os arquivos que estão no /usr/src/.svn
> aparecem na tela enquanto o tar está arquivando. Por favor, alguém poderia
> dizer-me o que eu estou fazendo errado?
> 
> Obrigado pela atenção

O parâmetro —exclude é um pattern, então não precisa ser absoluto. Tenta assim:

# tar —exclude .svn -czf fontes-10.1.tgz /usr/src /usr/obj

Caso você queira, dá pra transferir esse conteúdo inclusive direto sem gerar o arquivo .tar.gz

# tar —exclude .svn -czf - /usr/src /usr/obj | ssh DESTINO “tar -xzfC - /“

[]s
--
Renato Botelho



Mais detalhes sobre a lista de discussão freebsd