Descompactar o conteúdo do subdiretório do arquivo zip para / tmp?

1

Como parte de uma instalação de software com script no Xenial Xerus, eu tenho um arquivo compactado chamado 'test.zip' que contém, entre outros arquivos, alguns arquivos em um subdiretório chamado samples :

andrew@athens:~/Desktop$ unzip -l test.zip 
Archive:  test.zip
  Length      Date    Time    Name
---------  ---------- -----   ----
        0  2016-09-15 13:29   materials/
       66  2014-11-16 18:22   materials/preferences.kcfgc
    21554  2014-11-16 18:22   materials/mainwindow.cpp
      166  2016-09-15 13:29   materials/.zip
      164  2014-11-16 18:22   materials/Messages.sh
        0  2016-09-15 13:28   samples/
    35147  2014-11-16 18:22   samples/LICENCE
      631  2014-11-16 18:22   samples/README.md
     2344  2014-11-16 18:22   samples/main.cpp
---------                     -------
    60072                     9 files
andrew@athens:~/Desktop$ 

Usando a linha de comando do Xenial Xerus unzip utility como eu extraio o conteúdo somente de samples , descomprimindo-os para /tmp ?

    
por andrew.46 15.09.2016 / 05:36

1 resposta

4

O comando seria extrair com nomes de pastas (comportamento padrão):

unzip test.zip samples/* -d /tmp

sem nomes de pastas (extraindo arquivos contidos apenas na pasta samples):

unzip -j test.zip samples/* -d /tmp

De man unzip :

   -j     junk paths.  The archive's directory structure is not recreated;
          all files are deposited in the extraction directory (by default,
          the current one).

Espero que isso ajude!

    
por Terrance 15.09.2016 / 05:48