• Diese Seite verwendet Cookies. Indem du diese Website weiterhin nutzt, erklärst du dich mit der Verwendung von Cookies einverstanden. Erfahre mehr

grafischer Login ohne Loginmanager

OsunSeyi

Well-Known Member
Themenstarter #26
So'n Mist, hab's gerade getestet und es funktioniert tatsächlich nicht:
Code:
$ echo 'blub' > FILE
$ FILE=FILE
$ ./N*
^C
Warum eigentlich nicht...??
:ugly:
Für meinen ersten Thread hier im Forum doch ein guter Einstieg...

Ps:
Das ist aber Sch... weil jede Menge Scripte hier genau so ausschauen (also diese Art 'inline-Kommentare' haben) und offenbar nur 'gnadenhalber' funktionieren. Hätte ich doch bloß nichts gesagt...
Also bitte, geneigter Leser, bitte nicht lesen!

Vielen Dank, lieber TCM, hast mir den Abend versaut...
werd's in Zukunft nicht mehr so schreiben.
 

OsunSeyi

Well-Known Member
Themenstarter #29
Sag nicht, ich gäbe mir keine Mühe...
ich schätze, der Ausdruck echo 'x' | sed 's|x|y|g' ist auch unmöglich.
Trotzdem gefällt es mir besser, als alles mit '/' vollgeballert zu sehen.
Letztlich muss ich das ja selber nachvollziehen...
 

Yamagi

Possessed With Psi Powers
Mitarbeiter
#31
Dazu vielleicht noch mal meinen Standardtext zu Shell-Scripts: Shell-Scripting ist eine schöne Sache, zumindest solange man ein paar Unix-Kommandos verketten möchte oder ein wenig Kontrollfluss um sie herum braucht. Wir alle nutzen es und wenn ich nun schauen würde, wie viele Shell-Scripte ich mit Ansible verteile, wären es irgendwo zwischen 80 und 90 Stück. Aber der absolute Großteil von denen sind unter 25 Zeilen lang und machen wirklich nicht mehr als eben schnell ein paar Kommandos mit etwas Kontrollfluss dazwischen zusammenzukleben. Für alle, was darüber hinausgeht, nehmen wir Python, wobei es jede andere bessere Scriptsprache wie Perl, Ruby oder tcl natürlich auch tun würde.

Denn Shell-Scripting bietet nur wenige Möglichkeiten zur Fehlerbehandlung, der Syntax ist krude, das Verhalten trotz POSIX und all den schönen Dingen letztendlich abhängig von der verwendeten Shell. Mit einer "richtigen" Scriptsprache lassen sich wesentlich robustere, besser zu wartende und portierbare Scripte schreiben. Und sie haben meist sehr umfangreiche Bibliotheken und einen einen großen Pool von Paketen von Drittanbietern, die für nahezu jedes Problem schon eine Lösung implementieren. Das spart ganz massiv Arbeit.

Zum Beispiel dein Script. Du rührst per grep und sed in CSV und HTML rum. Beides sind strukturierte Daten, beide Tools sind aber nicht dazu gemacht mit strukturierten Daten zu arbeiten. Sie dennoch zu benutzen ist schwer verständlich und fehleranfällig. Python hat ein CSV-Modul beiliegen, es gibt mehrere HTML-Parser. In einer handvoll Zeilen hast du die CSV- und HTML-Dateien eingelesen und eine saubere Datenstruktur, auf der du arbeitest. Am Ende schreibst du diese wieder in ein CSV aus und fertig.

Behalte daher im Hinterkopf, dass für das Lernen von Shell-Script verwendete Zeit oft besser in einer richtigen Scriptsprache investiert ist. Man kommt damit einfach weiter, ist schneller und erzielte bessere Ergebnisse.
 

OsunSeyi

Well-Known Member
Themenstarter #32
Danke!:)

Ich wollte mal Perl lernen, bin aber leider nicht sehr weit gekommen. Php musste ich für die Webseite lernen, bin aber in allem immer ein Anfänger geblieben!

Wenn es eine wirklich schöne, lernenswerte Sprache gibt (Python, vielleicht Lua ...ich habe leider wirklich keine Ahnung) bin ich grundsätzlich schon aufgeschlossen. Ich finde allerdings, die erste Hürde ist ganz schön hart.

Es ist ja auch so, daß im Alltag immer irgend etwas schnell her soll, und ich aus dem bereits Vohandenem passende Versatzstücke hernehme, also auf die bereits vorhandene "Infrastruktur" aufsetze.

Welche Sprache ist denn eurer Erfahrung nach am schönsten?
 

Soonwald

Well-Known Member
#33
Danke!:)

.... Welche Sprache ist denn eurer Erfahrung nach am schönsten?
Das kommt ja auch etwas auf deinen Hintergrund an.
Wenn Du C kannst, wirst Du Dich in Perl zuhause fühlen - aber Perl auch schnell verfluchen!
Zumindest ging mir es so ...
letztendlich dürfte die RiesenSchlange wohl derzeit optimal sein
@Yamagi
Korrigier mich bitte - falls das auf Python nicht mehr zutrifft
 

Yamagi

Possessed With Psi Powers
Mitarbeiter
#34
Korrigier mich bitte - falls das auf Python nicht mehr zutrifft
Nein, nein. Du hast vollkommen recht. Ich würde niemals sagen, dass Python die perfekte Sprache ist. Aber letztendlich haben sie alle ihre Warzen, die Frage ist nur wo. Und für Python sprechen ganz klar die gute Zugänglichkeit und der geringe Frustfaktor, was gerade für Einsteiger wichtig ist. Dazu das große Ökosystem und - vielleicht irgendwann mal wichtig - der gute Windows-Support.
 

Yamagi

Possessed With Psi Powers
Mitarbeiter
#36
Kommt drauf an. Wenn es ums Lernen geht, ist Lua eine schöne Sprache. Weil sie recht wenig Syntax hat und damit übersichtlich ist, außerdem klar strukturiert und aufgeräumt. Das macht Programme in Lua übersichtlich und einfach verständlich. Für den täglichen Einsatz als stand-alone Sprache (also nicht als Scriptingsprache, die in eine andere Anwendung eingebunden ist) ist Lua aber fast schon gefährlich schlank und hat ein sehr kleines Ökosystem. Die offizielle Bibliothek ist recht klein, es gibt nur wenig Bibliotheken von Drittanbietern und auch sonst recht wenig Ressourcen.
 

OsunSeyi

Well-Known Member
Themenstarter #37
Lohnt es sich, Lua in Shellscripte einzubinden?
Ich finde wenig Dokumentation, und alles scheint schon ein wenig älter zu sein.
Obiges Statement klingt ja überaus enthusiastisch!

~~~~~~~~~~~~~~~~~~~~~~~
Ach, und Hilfe, noch so eine Frage...vollkommen abseits vom Thema:

Ganz genau! Snapshots, snapshots und nochmal sbapshots!
Kann ich ZFS einfach so aktivieren (ich meine, sowas in der rc.conf gesehen zu haben)?
Muss dafür nicht neu formatiert werden? Entschuldige RTFM fand nicht statt...

Hab irgendwo gelesen, dies währe für alte Rechner nicht unbedingt vorteilhaft.
Backups kann man ja auch mit Rsync beim Herunterfahren auf eine externe HD veranlassen.
Wenn die interne HD verreckt (ist ja das warscheinlichste Scenario) nutzt ZFS ja auch nichts..


Allerdings ist bei FreeBSD das Paket-Management immer noch "ziemlich neu" und ich habe mit Automatismen auch schon negative Erlebnisse gehabt.
Es gäbe da mitterweile einiges wieder zu entfernen (FF zB)...
Habe keine Lust, direkt von Anfang an jede Menge "Müll" mitzuschleppen...
 

Yamagi

Possessed With Psi Powers
Mitarbeiter
#38
Lohnt es sich, Lua in Shellscripte einzubinden?
ich würde sagen nein. Denn zwei Sprachen zu verbinden kostet dich erstmal mehr in Sachen Komplexität, als es dir an anderer Stelle Vorteile bringt. Und bei Scripten wahrscheinlich auch jemals bringen kann. Aber verstehe mich nicht falsch. Ich will dich nicht zu Python drängen. Ich bin aus dem Alter raus, in dem man sowas religiös ausfechten muss. Letztendlich musst du eine Sprache finden, mit der du dich wohlfühlst.
 

Soonwald

Well-Known Member
#39
...
Kann ich ZFS einfach so aktivieren (ich meine, sowas in der rc.conf gesehen zu haben)?
Muss dafür nicht neu formatiert werden? Entschuldige RTFM fand nicht statt...

Hab irgendwo gelesen, dies währe für alte Rechner nicht unbedingt vorteilhaft.
Backups kann man ja auch mit Rsync beim Herunterfahren auf eine externe HD veranlassen.
Wenn die interne HD verreckt (ist ja das warscheinlichste Scenario) nutzt ZFS ja auch nichts..
Achsooo sorry ... ich hatte "im Stillen" vorausgesetzt, dass Du ZFS auch als filesystem nutzt -
dann vergiss meinen Beitrag erstmal .. und schiebe deine Überlegungen zum Nutzen von ZFS
erstmal nach hinten
 

OsunSeyi

Well-Known Member
Themenstarter #40
@ cla:
rausgeschmissen wurde: Slim, FF, Midori, networkmgr mit der von Dir beschriebenen Methode pkg remove, pkg autoremove und pkg clean. Ich denke, das hat sich gelohnt...