Я не думаю, что это стандартное поведение любой из распространенных утилит bash zip. Вы должны предварительно извлечь zip, но вы можете создать скрипт, который извлечет только zip внутри корня file1.zip, вызывается unzip -l
и затем убрал за собой:
#!/bin/bash unzip -l file1.zip for f in $(unzip -Z1 file1.zip); do if [ $ == ".zip" ] then unzip -q -d . file1.zip $f unzip -l $f rm $f fi done;
Выход:
Archive: file1.zip Length Date Time Name --------- ---------- ----- ---- 312 2018-05-04 00:52 file2.zip 0 2018-05-04 00:52 textfile.txt --------- ------- 312 2 files Archive: file2.zip Length Date Time Name --------- ---------- ----- ---- 0 2018-05-04 00:22 file2 0 2018-05-04 00:52 textfile.txt --------- ------- 0 2 files