Hallo zusammen, bei mir wird einmal die Woche (via wget) ein Haufen Software von diversen Quellen aktualisiert. U.a. auch der Update Zweig von SuSE 9.0 und 9.1. Leider geht rync nicht über unsere Firmen FW, so das ich _hinterher_ von Hand aufräumen muss (alte Versionen löschen etc.) Dabei ermittle ich aus den Pakete via rpm --queryformat "%{Name},%{Version},%{Release}" die Informationen aus den rpm-Paketen. Wie entscheidet man, ob die Version neuer ist? In den meisten Fällen genügt ein >= (oder gt in perl) Vergleich; aber was ist hiermit: alt: name, 2.13, 1.9 neu: name, 2.13, 1.10 die Versionsnummer ist gleich, die Releasenummer ist für uns Menschen erkennbar grösser, aber ein Vergleich der Strings ergibt das falsche (1.9 gt 1,10) ! Die erste intuitive Lösung "zerlege Version und Release in ihre numerischen Teile und vergleiche diese" scheitert an nichnumerischen Versionen bzw. Releasenummern. Auch das Build-Datum zu nehmen, ist innerhalb einer "Build-Unit" wie z.B. SuSE-Update wohl möglich; kommen dann aber noch andere Quellen (packman, sourceforge, suse-people) hinzu, traue ich dem auch nicht als Kriterium. Daher die Frage: Wie macht man so einen Vergleich? Any Ideas? Andreas