ディレクトリではなくアーカイブのファイルのみを一覧表示する

ディレクトリではなくアーカイブのファイルのみを一覧表示する

以下のようにzip実装があります。

$ unzip -l 5124.zip
Archive:  5124.zip
  Length      Date    Time    Name
---------  ---------- -----   ----
        0  01-13-2021 09:22   u/
        0  01-13-2021 09:22   u/MyCom/
        0  01-13-2021 09:22   u/MyCom/UNX/
        0  01-13-2021 09:22   u/MyCom/UNX/scripts/
        0  01-13-2021 09:22   u/MyCom/UNX/scripts/SYNC/
        0  01-13-2021 09:22   u/MyCom/UNX/scripts/SYNC/sql/
    48704  01-13-2021 01:50   u/MyCom/UNX/scripts/SYNC/sql/Load.sql
    41872  01-13-2021 01:00   u/MyCom/UNX/scripts/SYNC/sql/Update1.sql
---------                     -------
    90576                     8 files

上記の場合、アーカイブからファイル名のみを取得し、残りは無視したいと思います。

/u/MyCom/UNX/scripts/SYNC/sql/Load.sql
/u/MyCom/UNX/scripts/SYNC/sql/Update1.sql

注:以前のコンテンツが必要な/出力から欠落しています。unzip

/u/MyCom/UNX/scripts/SYNC/sql/Load.sql
/u/MyCom/UNX/scripts/SYNC/sql/Update1.sql

まさか

u/MyCom/UNX/scripts/SYNC/sql/Load.sql
u/MyCom/UNX/scripts/SYNC/sql/Update1.sql

特定の郵便番号からこの情報を取得する良い方法はありますか?

ベストアンサー1

これを使用して、zipinfo -1ファイルパスを一覧表示し、sedaで終わるパス/と各行のプレフィックスを削除できます/

$ zipinfo -1 5124.zip | sed '/\/$/d;s/^/\//'
/u/MyCom/UNX/scripts/SYNC/sql/Load.sql
/u/MyCom/UNX/scripts/SYNC/sql/Update1.sql

おすすめ記事