tar wildcards em arquivos de

1

Tentando executar tar com --files-from . Eu tenho um arquivo files.txt que contém

/dir1/files*.txt

No entanto, reclama que /dir1/files*.txt não existe, mas ls prova que isso acontece.

Eu também tentei adicionar --wildcards no mesmo resultado.

Como faço para arquivar curingas com sucesso usando --files-from sem especificar arquivos na linha de comando?

    
por Felipe Alvarez 29.10.2014 / 01:19

1 resposta

5

Um asterisco em um comando é expandido antes de executar o comando por um shell, como bash.

Por exemplo, quando você executa ls *.txt e tem três arquivos txt em um diretório chamado a.txt , b.txt e c.txt bash expande-o para ls a.txt b.txt c.txt

Eu não acredito que o GNU tar suporte este tipo de comportamento, no entanto você pode usar find e pipe no tar: find /dir1 -iname '*.txt' -printf '%P\n' | tar --files-from=- -cvf textfiles.tar

De acordo com a página de manual , o sinalizador --wildcards só pode ser usado ao extrair ou listar o conteúdo de um arquivo já existente.

    
por 29.10.2014 / 01:40

Tags