如何以编程方式下载apt包的最新deb文件并提取其中的内容,以便能够访问其中的脚本?我希望这可以在使用标准工具套件(即没有apt-get或apt-cache)的mac上运行。
背景:我的模拟项目使用客户端代码来执行。主机模拟工具在linux环境中运行,并通过内部apt服务器进行管理。一位同事正在他的linux机器上使用apt-get来安装软件包,然后向我们发送了一个文件。我希望我们的客户端以一种可以在mac客户端上工作的编程方式来完成这项工作。我已经运行了这个过程(参见示例答案),但令我惊讶的是,还没有人谈论过这个问题。
关于如何最好地做到这一点,有什么建议吗?
发布于 2013-09-20 03:22:27
这是我在问之前试图说服自己的可行性。
获取linux系统上的链接信息:apt-cache show s-package-name从中,我找到了这一行:
Filename: pool/main/s/s-package-name/s-package-name_0.2.0-variousNumbers3_all.deb从这一点上,我能够做以下事情:
wget http://aptserver/pool/main/s/s-package-name/s-package-name_0.2.0-variousNumbers3_all.deb
ar vx s-package-name_0.2.0-variousNumbers3_all.deb
tar -zxvf data.tar.gz这又解压缩了一个文件夹opt,其中包含一个具有组织名称的文件夹(以下称为sOrg),其中是一个名为package-name的文件夹,其中包含我想要的文件。
最后,我在浏览器中回头看了看http://aptserver/pool/main/s/s-package-name/,我看到了类似如下的内容:
s-package-name_0.2.0-variousNumbers0_all.deb 12-Jul-2013 22:40 2.5M
s-package-name_0.2.0-variousNumbers1_all.deb 16-Jul-2013 15:30 2.6M
s-package-name_0.2.0-variousNumbers2_all.deb 22-Aug-2013 23:45 2.6M
s-package-name_0.2.0-variousNumbers3_all.deb 12-Sep-2013 22:21 2.6M 这让我认为,我应该能够只使用web查询来查看该文件,并确定最新的deb文件的名称(而不是转到linux机器)。
我已经准备好自动化这件事了,但我想我会先看看这个问题是解决了,还是有更好的方法来攻击它。
https://stackoverflow.com/questions/18903144
复制相似问题