
Como parte de uma instalação de software com script no Xenial Xerus, 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 unzip
o utilitário de linha de comando do Xenial Xerus, como faço para extrair oapenas conteúdode samples
, descompactando-os para /tmp
?
Responder1
O comando seria extrair com nomes de pastas (comportamento padrão):
unzip test.zip samples/* -d /tmp
sem nomes de pastas (extraindo apenas arquivos contidos 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 isto ajude!