在python中获取deb包中的conffiles列表

我想使用
python获取与deb包关联的conffiles列表.我正在开发一个项目,我需要知道是否修改了包安装的任何conffile所以我需要有一个包安装的配置列表,以便我可以使用它来查看哪个配置已被修改.

我试图使用python-apt library documentation,但找不到任何方法,请建议我这样做的方法.我知道我可以提取控制信息并读取原始的conffiles文件,但我认为库本身可能有一个方法.

最佳答案 这是在python-apt上进行测试的:

我使用的包是:

http://ftp.debian.org/debian/pool/main/o/openssh/openssh-server_5.5p1-6+squeeze1_amd64.deb

from apt.debfile import DebPackage
ssh = DebPackage('openssh-server_5.5p1-6+squeeze1_amd64.deb')
print ssh.control_content('conffiles').split('\n')

[u'/etc/init.d/ssh', u'/etc/default/ssh', u'/etc/network/if-up.d/openssh-server', u'/etc/ufw/applications.d/openssh-server', u'/etc/pam.d/sshd', u'']

你需要删除最后一个

print ssh.data_content('etc/init.d/ssh')
u'#! /bin/sh\n\n### BEGIN INIT INFO\n#......'

你需要删除第一个斜杠

点赞