Search code examples
pythonsearchrpmglob

Globbing with python rpm module?


The following code uses the rpm module to query the version of an installed package. What I would like to do is to query a set of packages specified by a glob, for example searching for "python*" rather than "python". Is this possible using the rpm module?

  1 #!/usr/bin/python
  2 
  3 import rpm
  4 
  5 ts = rpm.TransactionSet()
  6 mi = ts.dbMatch("name", "python")
  7 for i in mi:
  8     print i['name'], i['version']

`


Solution

  • import rpm
    ts = rpm.TransactionSet()
    mi = ts.dbMatch()
    mi.pattern('name', rpm.RPMMIRE_GLOB, 'py*' )
    for h in mi:
       # Do something with the header...