Extrair arquivos específicos em um arquivo tar usando um curinga

15

Estou tentando criar um script para extrair apenas imagens JPEG de um arquivo que contém muitos tipos de arquivos.

Para fazer isso, tentei usar:

   tar -xf MyTar.tar *.jpg

mas falhou (* .jpg não encontrado) e sugira que eu use "--wildcard". Então eu tentei

tar -xf MyTar.tar --wildcard *.jpg

Fiz isso, mas, em seguida, o mesmo erro e um aviso diferente me dizendo que a opção "--wildcard" é ambígua.

Estive nas páginas de manual em busca de alcatrão, mas não encontrei uma pista sobre o problema.

AdrieanKhisbe
fonte
Qual alcatrão e qual versão? Cole os resultados detar --version
smci 28/11

Respostas:

28

No final, encontrei a resposta depois de uma boa pausa. A opção é curinga s , plural ...

Então o comando

tar -xf MyTar.tar --wildcards "*.jpg"

fiz exatamente o que eu precisava.

AdrieanKhisbe
fonte
3

Coloque aspas ao redor do curinga assim, "*.jpg"para que o shell não tente expandi-lo e, em vez disso, passe-o diretamente para o tar. Você quer que o tar avalie o curinga, não o shell e as aspas fazem isso.

Nicole Hamilton
fonte