Python, Perl oder doch Bash ??

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
ascotlxn
User
Beiträge: 4
Registriert: Montag 26. November 2018, 18:38

Hallo zusammen,
ich bin mir gar nicht sicher, ob ich mit der Wahl Python zu lernen tatsächlich richtig liege.
Seit Jahren schreibe ich Skript in (fast) jeder Shell für unterschiedlichste Zwecke. Nun war meine Idee es mal mit Python zu versuchen .. und stehe vor der Frage "war das sinnvoll?"

Ich schreiben Skripte hauptsächlich für System administrative Zwecke. Datensicherung, Anzeige /Auswertung für Logfiles, etc. Nur alles was ich bisher zu Python finde, behandelt eben diesen Part nicht.
Lag ich falsch mit meiner Entscheidung (nicht falsch verstehen, ich find Python schon nicht schlecht), aber ich finde kaum was zu dem genannten Thema.

Wäre nett, wenn ihr mir eine kurze Rückmeldung gegeben könntet, ob solche Systemaufgaben sich auch mit Python erledigen lassen, oder ob es dafür eigentlich nicht gedacht war.

Besten Dank
ascotlxn
__deets__
User
Beiträge: 14539
Registriert: Mittwoch 14. Oktober 2015, 14:29

Wir machen unser gesamtes Ops-Tooling mit Python. Die starken Datentypen von Python, die deutlich einfacher und konsistenter zu benutzen sind als die teilweise haarstraeubenden Verrenkungen, die man in Bash mit arrays und Co machen muss, sind es fuer mich alle mal wert.

Perl kann das generell denke ich auch, aber der Sprache habe ich mich bis dato verweigert, und kann darum nichts dazu sagen.
Sirius3
User
Beiträge: 17749
Registriert: Sonntag 21. Oktober 2012, 17:20

Pythons Stärken liegen u.A. in der Stringverarbeitung, die man ja für Auswertung von Log-File brauchen kann. Vielleicht versuchst Du Dich an einem konkreten Projekt und stellst hier Fragen wenn Du nicht weiterkommst.
Benutzeravatar
sls
User
Beiträge: 480
Registriert: Mittwoch 13. Mai 2015, 23:52
Wohnort: Country country = new Zealand();

Ich nutze Bash hauptsächlich, um Backups zu erstellen oder einfache administrative Arbeiten unter Linux-Servern durchzuführen (z.B. "finde alle Dateien die größer sind als 5 MB, komprimiere diese und erstelle ein TAR, schiebe es anschließend nach /xy") oder für automatisierte Build-Routinen (Python-Paket erstellen, via curl an ein zentralen Store-Server uploaden mit Purge-Timestamp) uvm.

Wenn es darum geht, Logfiles auszuwerten, nutze ich Python, da ich mit Sed und Awk überhaupt nicht fit bin und ich komplexere Auswertungen mit Python deutlich einfacher, eleganter und schneller umsetzen kann. Python ist IMO nie eine verkehrte Wahl und DIE Sprache, wenn es um Linux-Server-Verwaltung geht. Perl kennen bei uns nur noch die ganzen Alten :-)
When we say computer, we mean the electronic computer.
ascotlxn
User
Beiträge: 4
Registriert: Montag 26. November 2018, 18:38

Vielen Dank für die hilfreichen Antworten.
Ich werde mich mal an das Thema wagen und mir ein Skript vornehmen und versuchen es auf Python zu Portieren.
Auf jeden Fall werde ich mich melden, sollte ich Gefahr laufen mir die Stirn an Wand zu zertrümmern ;)
Bis dann
ascotlxn
User
Beiträge: 4
Registriert: Montag 26. November 2018, 18:38

ach so .. hat jemand eine Literatur Empfehlung für mich ?? Oder reicht es im Forum und im Internet nach Ansätzen zu suchen ?
Benutzeravatar
sls
User
Beiträge: 480
Registriert: Mittwoch 13. Mai 2015, 23:52
Wohnort: Country country = new Zealand();

Je nach Kenntnissstand das offizielle Python-Tutorial und bei Fragen wenn's brennt hier im Forum. Bitte PEP-8 verinnerlichen.

Was man sich in deinem speziellen Fall noch reinziehen könnte wäre Al Sweigart's "Automate the boring stuff" wo typische Routine-Aufgaben, auch im administrativen Bereich, thematisiert werden.
When we say computer, we mean the electronic computer.
Benutzeravatar
snafu
User
Beiträge: 6740
Registriert: Donnerstag 21. Februar 2008, 17:31
Wohnort: Gelsenkirchen

nezzcarth
User
Beiträge: 1634
Registriert: Samstag 16. April 2011, 12:47

Vielleicht ist folgender Text ja von Interesse: https://github.com/ninjaaron/replacing- ... ith-python

Ansonsten wäre meine Empfehlung noch zu versuchen, sich auf Python einzulassen und keine Shell-Skripte in Python-Syntax zu schreiben.
ascotlxn
User
Beiträge: 4
Registriert: Montag 26. November 2018, 18:38

.. super, danke. Da habe ich ja was zu lesen :)
Antworten