在Bash使用ZIP存档

时间:2014-12-30 04:59:35

标签: linux bash zip unzip

我需要编写一个简单的Bash脚本。如何使用多个文件解压缩存档(在同一目录中)并获取这些解压缩文件的路径?归档路径是$ 1属性。以及如何使用$ 2路径将这些文件打包回新存档中?感谢

UPD: 我试试这个: filenames=(zipinfo -1 $1\) extension=".csv" unzip $1 for i in "${filenames[@]}" do : newfilename=${i:0:${#i}-4}$extension #change extension to .csv #...do smth... zip -r $2 $newfilename done 但是在存档中有空文件“.csv”(没有名称,olny扩展名).ъ

UPD2:解决了,因为测试目录名为“abc”,我对最后一个字符“$ last”=“/”进行了比较并且有效了

1 个答案:

答案 0 :(得分:1)

如果zipfile是foo.zip,要解压缩档案,你可以

unzip foo.zip

并列出您可以执行的存档中的文件

zipinfo -1 foo.zip