Ho scritto uno script bash che deve confrontare due stringhe di versione per decidere di scaricare una nuova versione o meno. Il test si basa su uno script Python che lo fa apt.VersionCompare(), che fa il confronto delle versioni nel modo in cui lo aptfa.
#!/usr/bin/env python
import sys, apt
res = apt.VersionCompare(sys.argv[1], sys.argv[2])
if res < 0:
sys.exit(-1)
if res > 0:
sys.exit(1)
sys.exit(0)
Con l'aggiornamento a Ubuntu 14.4 questo ha smesso di funzionare.
Ho provato a cambiare lo script seguendo /programming/4957514/ come di seguito:
#!/usr/bin/env python
import sys, apt_pkg
res = apt_pkg.version_compare(sys.argv[1], sys.argv[2])
if res < 0:
sys.exit(-1)
if res > 0:
sys.exit(1)
sys.exit(0)
ma questo mi dà ValueError: _system not initialized. Come risolvere o c'è un modo migliore per confrontare le versioni come aptfa?
import aptprompt interattivo prima dell'importazioneapt_pkg? Ciò spiegherebbe le cose, poiché inizializza anche il modulo.