tar - 在 tar 文件中列出 zip 文件的内容
问题描述
我有一个 tar 文件。里面是一些 zip(不是 gzip)文件。我想列出 zip 文件的内容而不提取任何内容。
我可以执行 tar tf 来列出文件,然后遍历它们并对每个 zip 文件执行 unzip -l 。
有没有一种优雅的(单线)方式来做到这一点?
解决方案
从tar开始,您可以使用-O命令行选项将其写入标准输出。
旁边解压部分的问题。标准的 Linux infozip 版本的 zip/unzip 不支持从标准输入读取输入。funzip命令是 infozip的一部分,可以从标准输入读取,从标准输入读取,但它只支持解压缩。它没有列出内容的选项。
幸运的是,Java jar 文件实际上只是具有良好定义结构的 zip 文件,jar命令可以从标准输入读取并列出输入文件的内容
因此,假设您有一个名为my.tar的 tar 文件,它只包含 zip 文件,这样的内容应该列出嵌入的 zip 文件中的文件名
tar xOf my.tar | jar -t
推荐阅读
- cmake - 为什么不能将 libgtest.a 移动到其他位置?
- android - Android 上的导航 Epub3
- python - Kivy:如何刷新计数器的文本和进度条?
- javascript - mouseHold 和 mouseDown - 不同的功能
- web-clips - 查看用户是否打开我的网站
- spring-boot - 使用 Spring Cloud Kubernetes,如何获取正在运行的实例的 instanceId
- node.js - NodeJS + Sequelize / 如何执行三重模型查询?
- release - 申请华为帐号和健康包
- javascript - 在 MUI v5 ReactJS 上从 widthWidth 更改为 useWidth
- r - argondash 不适用于水平布局