![档案管理器和命令 'ar' 之间的区别](https://linux22.com/image/1083662/%E6%A1%A3%E6%A1%88%E7%AE%A1%E7%90%86%E5%99%A8%E5%92%8C%E5%91%BD%E4%BB%A4%20'ar'%20%E4%B9%8B%E9%97%B4%E7%9A%84%E5%8C%BA%E5%88%AB.png)
我正处于学习 Debian/Ubuntu 打包的早期阶段,并且正在关注本指南打包二进制文件集合(我通过使用 Alien 分解 rpm 包获得)。
按照步骤 3 中的建议,您可以使用以下命令查看包内容(例如,我将使用 chromium):
$ ar tv /var/cache/apt/archives/chromium-browser_37.0.2062.120-0ubuntu0.14.04.1~pkg1049_amd64.deb
返回:
rw-r--r-- 0/0 4 Sep 17 00:45 2014 debian-binary
rw-r--r-- 0/0 5220 Sep 17 00:45 2014 control.tar.gz
rw-r--r-- 0/0 46696752 Sep 17 00:47 2014 data.tar.xz
当通过档案管理器打开时,该包看起来像这样:
如您所见,内容似乎完全不同(尽管我期望它们相同)。我对存档管理器和/或命令有什么不理解的地方ar
?
答案1
档案管理器对文件进行一些处理,以便您无法按原样看到它,而是以更人性化的形式看到它。
例如,您可以看到文件tar
中存档的内容tar.gz
,而不是看到tar
存档本身,就像在 Windows 中的 7zip 中打开它一样。
我猜它用的是libarchive
但我错了。
它用于dpkg-deb
处理 Debian 软件包,这是在版本中引入的功能。2.31.3:
- 使用 dpkg-deb 查看和提取 .deb 文件。(Josselin Mouette) (#576436)
这样做是为了回应功能要求。
如果没有dpkg-deb
安装(例如:在 Arch Linux 中),档案管理器将按如下方式显示ar
它: