2016-11-12 24 views
-3

我已经LAPP.NT.APC.HIST.zip文件,我解压的文件名,获取在Linux

$ 解压LAPP.NT.APC.HIST.ZIP
存档:LAPP .NT.APC.HIST.EXT.AUDIT.MTLY.ZIP
PKZIP用于通过PKWARE z/OS的
充气:LAPP.NT.APC.HIST.EXT.AUDIT1
充气:LAPP.NT.APC .HIST.EXT.AUDIT2

如何才能获得具体的膨胀文件名?如果我得到文件名,我想分配成一个变量,如何做?

名= find . -type f -name "*.*"
回声$文件名

感谢@Zlemini,@jszakmeister,

+0

对不起,目前还不清楚是什么,你居然问。 – arkascha

+0

当您UNZIP时,您将_inflated_结果指向特定的文件夹。 UNZIP的结果可能是文件的平面列表或文件夹和文件的树。您可以简单地扫描目标文件夹(以及分层模式下的任何子文件夹)的内容,并收集在那里找到的文件的名称。如果你正在寻找一个特定的文件名,然后做同样的事情,但提供(至少)一个文件名的种子。 – FDavidov

+0

我在寻找一个只有特定文件名的zip文件 –

回答

3

unzip -l filename.zip将打印名称中的,未压缩的文件大小和修改日期和时间一个档案没有膨胀它。

unzip -Z1 peace.zip更适合我这里,因为它只会显示文件名。

这里是包含在分配给一个变量一个zip文件的文件名:

files_zipped=$(unzip -Z1 filename.zip)

+0

谢谢,但我想分配给一个变量的文件名膨胀,怎么办? –

+2

你需要解析'unzip -l'的输出,例如:'zipfile_content = $(unzip -l filename.zip | awk'{print $ NF}')' – Zlemini

+0

请解释上面的命令,if ** echo $ zipped_gif **我没有获得文件名? –