是否可以获得安装软件包的时间以及该特定软件包的构建时间?
例如:
import apt
def get_pkg_details():
apt_cache = apt.Cache()
selected_pkg = apt_cache["git"] #Example package
time_installed = selected_pkg.installedTime() #?????
我知道这可以通过RPM实现,但我没有在APT上找到任何与此类似的文档。
在RPM中,可以使用以下枚举器访问包的安装时间和构建时间:
RPMTAG_INSTALLTIME
RPMTAG_BUILDTIME
python-apt文件: http://stuff.mit.edu/afs/athena/system/i386_deb50/os/usr/share/doc/python-apt/html/apt/package.html#examples
RPM Tag API: http://rpm.org/api/4.6.0/group__rpmtag.html
答案 0 :(得分:1)
我维护了通过apt-server分发的代码的一部分,所以我不得不处理这个问题,对于构建包的时间的基本概念我得到了mtime {{3}包... /var/lib/dpkg/info/PACKAGE
我的代码行也将其转换为日期时间对象。
datetime.datetime.fromtimestamp(os.path.getmtime("PATH"))
答案 1 :(得分:1)
您可以使用以下命令找到安装日期。
ls /var/lib/dpkg/info/*.list -lah | grep packagename
-rw-r--r-- 1 root root 1.4K Dec 29 18:50 /var/lib/dpkg/info/libasound2-dev:i386.list
-rw-r--r-- 1 root root 4.5K Dec 29 16:09 /var/lib/dpkg/info/libasound2:i386.list
-rw-r--r-- 1 root root 2.3K Dec 29 16:10 /var/lib/dpkg/info/libasound2-plugins:i386.list
至于编译日期,您可以在/ var / cache / apt / archives /
中查找软件包的mtime