1

パッケージがインストールされた時刻と、その特定のパッケージのビルド時刻を取得することはできますか?

例えば:

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 タグ API: http://rpm.org/api/4.6.0/group__rpmtag.html

4

2 に答える 2

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を探すことができます。

于 2013-01-02T08:22:40.430 に答える
1

apt-server を介して配布されるコードの一部を維持しているので、パッケージのビルド時間の基本的な考え方について、パッケージの mtime を取得するために、この問題にも対処する必要がありましたos.path.getmtime().../var/lib/dpkg/info/PACKAGE

私のコードの行もそれを日時オブジェクトに変換します。

datetime.datetime.fromtimestamp(os.path.getmtime("PATH"))
于 2013-01-02T08:17:55.907 に答える