如何将值从rpm .spec文件传递给python脚本?

0 投票
1 回答
529 浏览
提问于 2025-04-18 02:13

我有一个问题,顺便说一下,这个问题和我之前问的很相似:

如何将一个rpm规格参数传递给C++程序

这次我想在Python脚本中使用一个在RPM .spec文件中定义的值。特别是我想知道有没有办法在Python中读取_datadir的值?

谢谢大家的帮助;)

1 个回答

0

你可以使用RPM的Python接口(详细说明可以在RPM API找到)。

比如说:

import os, rpm

def get_rpm_version(path):

    # open .rpm file
    fdno = os.open(path, os.O_RDONLY)

    # init transaction set
    ts = rpm.TransactionSet()

    # read header
    hdr = ts.hdrFromFdno(fdno)

    # close file
    os.close(fdno)

    # return version
    return hdr['version']

撰写回答