Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Python - ausgabe formatieren

Mitglied: BadFsaadKl

BadFsaadKl (Level 1) - Jetzt verbinden

23.11.2016 um 13:40 Uhr, 1627 Aufrufe

Hallo zusammen,

ich habe ein kleines Python Script geschrieben, welches als Ziel hat, mir alle Verfügbaren Lunix Updates anzuzeigen, und anhand dieser Liste gleich schaut, welche Version aktuell installiert ist.
Leider sieht die Ausgabe nicht gerade übersichtlich aus, bzw. ist zu verwenden, um diese in ein Outputfile zu schreiben.

Könnt Ihr mit helfen ?

Zielausgabe sollte wie folgt sein:

hostname ; packagename ; installierte version ; verfügbare version ;
aber irgendwie hab ich gerade einen hänger was die formatierung angeht.

Anbei der Code von meinem Script:

#!/usr/bin/env python
import os
import platform
import subprocess
import re

outputfile = "yum.output.txt"

if platform.system() == "Linux":

    if os.path.exists(outputfile):
        os.remove(outputfile)
    cmd = os.system("yum list updates >> yum.output.txt")

    # ersten 3 Zeilen aus Header entfernen
    fobj = file(outputfile, 'r')
    lines = fobj.readlines()
    fobj.close()

    del lines[0:3]

    fobj = file(outputfile, 'w')
    for i in lines:
        fobj.write(i)
    fobj.close()
    ##################

    for line in file(outputfile):
        line2 = re.sub(r'\s+', ';', line)
        arr = line2.split(";")
        instpackage = arr[0]
        instpackage2 = instpackage.split(".")
        instpackage3 = ''.join(instpackage2[0])
        updversion = arr[1]

        cmdhosts = os.system("hostname")
        cmdhostname = ''.join(str(cmdhosts))

        cmd2 = os.system("rpm -qa | grep " + instpackage3)

        cmd3 = ''.join(str(cmd2))

        print (cmdhostname + ";" + instpackage2[0] + ";" + updversion + ";" + cmd3 + ";\n")
Aktuell sieht meine Ausgabe wie folgt aus:

c29-rs-pt-pr
perl-Net-SSLeay-1.35-10.el6.x86_64
0;perl-Net-SSLeay;1.35-10.el6_8.1;0;

c29-rs-pt-pr
policycoreutils-2.0.83-29.el6.x86_64
0;policycoreutils;2.0.83-30.1.el6_8;0;

c29-rs-pt-pr
python-dateutil-1.4.1-6.el6.noarch
python-pycurl-7.19.0-9.el6.x86_64
python-2.6.6-64.el6.x86_64
python-iniparse-0.3.1-2.1.el6.noarch
newt-python-0.52.11-3.el6.x86_64
python-lxml-2.2.3-1.1.el6.x86_64
python-ethtool-0.6-5.el6.x86_64
python-dmidecode-3.10.13-3.el6_4.x86_64
dbus-python-0.83.0-6.1.el6.x86_64
libxml2-python-2.7.6-21.el6_8.1.x86_64
rpm-python-4.8.0-55.el6.x86_64
redhat-support-lib-python-0.9.7-4.el6.noarch
python-urlgrabber-3.9.1-11.el6.noarch
python-libs-2.6.6-64.el6.x86_64
python-simplejson-2.0.9-3.1.el6.x86_64
python-gudev-147.1-4.el6_0.1.x86_64
python-magic-5.04-30.el6.x86_64
python-rhsm-1.16.6-1.el6.x86_64
0;python;2.6.6-66.el6_8;0;
Ich hoffe Ihr könnt mir helfen.

Gruß
Ähnliche Inhalte
Python

Verschlüsslung - Alternative zu python-gnupg? (Python)

gelöst Frage von clragonPython4 Kommentare

Guten Morgen liebe Mit-Programmierer Aktuell versuche ich asynchrone Datei-Verschlüsselung, das heißt, eine Datei synchron verschlüsseln und dann das ganze ...

Python

Python IMAP Idle Problem

Frage von tingelPython

Hallo zusammen, ich habe in Python ein kleines Scirpt, welches Mail abruft und diese auswertet. Das läuft und läuft. ...

Python

If-Schleife mit python

gelöst Frage von DexthaPython2 Kommentare

Hallo zusammen, ich versuche gerade meine ersten Gehversucht mit pyton auf einem PI. Ich möchte damit einen gpio-Eingang abfragen ...

Python

Python GUI Button funktionen?

gelöst Frage von ScuzzyPython7 Kommentare

Guten Tag, ich möchte ein Skript bauen welches eine GUI öffnet und ich die auswahl zwischen 3 Browsern habe. ...

Neue Wissensbeiträge
Sicherheit
0-day Schwachstelle im Internet Explorer
Information von kgborn vor 2 TagenSicherheit

In Microsofts Internet Explorer gibt es eine 0-day Schwachstelle in der Scripting Engine, die faktisch alle Browser- und Windows-Versionen ...

Internet

Internet-Speedtest Automatisieren via Befehlszeile, cmd, Bash (Windows, Linux, FreeBSD, Mac)

Tipp von anteNope vor 3 TagenInternet4 Kommentare

Also das hier ist irgendwie an mir vorbeigegangen. Einfacher geht es schlicht nicht mehr. Mit "-s 28624 wähle ich ...

Administrator.de Feedback

Entwicklertagebuch: Codeblöcke auf unseren Seiten

Information von admtech vor 3 TagenAdministrator.de Feedback8 Kommentare

Hallo Administrator User, Unsere Codeblöcke werden ab sofort anders dargestellt. Die Codeblöcke können nun direkt per Copy&Paste kopiert werden. ...

Humor (lol)
Internet - auch 2020 noch Neuland ?
Erfahrungsbericht von Henere vor 4 TagenHumor (lol)6 Kommentare

Heute eine Mail der Schule meiner Tochter bekommen. Blabla Umweltschutz bla bla siehe Anhang. Dumm nur: Da hab ich ...

Heiß diskutierte Inhalte
Webbrowser
Kann Firefox von Google Suche nicht befreien
Frage von RG2525Webbrowser19 Kommentare

Hallo, Das passiert jetzt in letzter Zeit auf mehreren Computern von mir, dass die Google Suche sich nicht ausschalten ...

Peripheriegeräte
Datenstrom Drucker
Frage von FragefuchsPeripheriegeräte12 Kommentare

Moin, kann mir jemand sagen, wie Computer Daten an einen Drucker weitergeben? Gibt es dafür ein Protokoll oder Format? ...

Windows Server
Computerobjekte in AD auf Gerätetyp filtern
Frage von SchroediWindows Server11 Kommentare

Hallo zusammen, gibt es eine Möglichkeit in der AD die Computerobjekte auf Gerätetyp, also Notebook / Desktop-PC in einer ...

DSL, VDSL
O2 Router mit Fritzbox ersetzen - Problem?
gelöst Frage von Daniel.HuferDSL, VDSL11 Kommentare

Hallo, habe eine o2 Router von o2 früher hatte ich einen Alice Vertrag. Die hatte da vor paar Monaten ...