Étant donné le nom du package rpm, interrogez la base de données yum pour connaître les mises à jour

StackOverflow https://stackoverflow.com/questions/489113

  •  20-08-2019
  •  | 
  •  

Question

J'imaginais un script Python à 3 lignes pour le faire, mais l'API Python yum était impénétrable. Est-ce même possible?

Est-ce que l'écriture d'un wrapper pour 'yum list nom-paquet' est le seul moyen de le faire?

Était-ce utile?

La solution

Comme le souligne Seth, vous pouvez utiliser les API de mise à jour pour demander si une mise à jour est disponible. Pour quelque chose qui est proche de ce que la & Quot; yum list & Quot; Voulez-vous probablement utiliser le doPackageLists (). P. ex.

import os, sys
import yum

yb = yum.YumBase()
yb.conf.cache = os.geteuid() != 1
pl = yb.doPackageLists(patterns=sys.argv[1:])
if pl.installed:
    print "Installed Packages"
    for pkg in sorted(pl.installed):
        print pkg
if pl.available:
    print "Available Packages"
    for pkg in sorted(pl.available):
        print pkg, pkg.repo
if pl.reinstall_available:
    print "Re-install Available Packages"
    for pkg in sorted(pl.reinstall_available):
        print pkg, pkg.repo

Autres conseils

http://fpaste.org/paste/2453

et il y a de nombreux exemples de l'API Yum et quelques guides pour commencer avec elle ici:

http://yum.baseurl.org/#DeveloperDocumentationExamples

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top