他のzipファイル内でzipファイルのファイル名のリストを見ることはできますか?

他のzipファイル内でzipファイルのファイル名のリストを見ることはできますか?

unzip -l file.zipzipファイルのファイルリストを表示するために使用できることを知っています。

しかし、他のzipファイルの中にzipファイルがあります。試しましたがunzip -l file.zip/sub_file.zip失敗しました。

sub_file.zip 解凍せずにファイルのリストを表示できますか?

答え1

unzip -l file.zip/sub_file.zipディレクトリではないので動作しませんfile.zip。アーカイブ形式の一般ファイルです。ただし、zipファイルの内容ビューを表示するファイルシステムをインストールすると、zipファイルの内容をミラーリングするディレクトリを作成できます。いくつかのオプションがあります。ディストリビューションにインストールする最も簡単なオプションを選択してください。

たとえば、archivemountを使用すると、次のようになります。

mkdir file.d
archivemount file.zip file.d
unzip -l file.d/sub_file.zip
fusermount -u file.d

でも

mkdir file.d sub_file.d
archivemount file.zip file.d
archivemount file.d/sub_file.zip sub_file.d
ls -lR sub_file.d
fusermount -u sub_file.d
fusermount -u file.d

バラより圧縮アーカイブから特定のファイルのみを特定のディレクトリに抽出する圧縮アーカイブを再帰的にgrepする方法は?そして特定のサイズのファイルに対して繰り返し圧縮されたアーカイブを検索します。同様の状況でのAVFSとfusion-zipの例。

答え2

あなたはlessそれを使用することができますヴォルフガングフリーベルのlesspipe脚本:less file.zip:sub_file.zip

答え3

そしてzsh

$ unzip -l a.zip.zip
Archive:  a.zip.zip
  Length      Date    Time    Name
---------  ---------- -----   ----
      195  2014-08-18 09:38   a.zip
---------                     -------
      195                     1 file

$ unzip -l =(unzip -p a.zip.zip a.zip)
Archive:  /tmp/zsh0i0JyZ
  Length      Date    Time    Name
---------  ---------- -----   ----
       55  2014-08-15 15:24   a
---------                     -------
       55                     1 file

=(...)パイプの代わりに一時ファイルを使用する3番目の形式のプロセスの置き換え(unzip検索可能ファイルでのみ使用可能)。

関連情報