Como posso criar um arquivo tar a partir de uma lista de arquivos em outro arquivo tar?

0

Eu tenho um processo que cria um arquivo tar com cópias de arquivos que precisam ser atualizados.

Eu quero fazer backup dos arquivos existentes antes de sobrescrever os novos arquivos.

Eu tentei

tar cf backup.tar -T 'tar tf updated.tar'

O que não funcionou. Se eu canalizar a saída do tar tf para um arquivo, então use isso como o -T param ele funciona:

tar tf updated.tar > list; tar cf backup.tar -T list

Mas parece-me que eu deveria ser capaz de realizar isso em um comando. É possível?

    
por chris 13.03.2013 / 18:03

3 respostas

3

Especifique stdin como arquivo de entrada, por exemplo:

tar tf updated.tar | tar cf backup.tar -T -

    
por 13.03.2013 / 18:16
1

A opção -T está procurando especificamente por um arquivo, não por uma lista. Sua primeira tentativa passa uma lista para -T, e é provavelmente por isso que não funciona. Eu tentaria algo como:

tar tf updated.tar | xargs tar cf backup.tar
    
por 13.03.2013 / 18:12
-1

Eu uso este comando:

tar cf backup.tar 'tar tf updated.tar'
    
por 20.03.2014 / 10:42

Tags