• Die vermutlich verbreitetste Linux-Shell ist in Version 4.0 erschienen, mit ein paar netten Features, wenn man mich fragt:


    • Die Wildcard ** nimmt auch gleiche alle Unterverzeichnisse mit rein
    • Assoziative Arrays. So wie es scheint aber nach wie vor keine mehrdimensionalen.
    • Umleitung von stderr und stdout auf einmal mit &>>, bzw. stderr auf stdout mit |&
    • Word Expansions, um die Gross- und Kleinschreibung zu ändern: (^[^]) für Großbuchstaben und (,[,]) für Kleinbuchstaben.


    Ja.. let's go scripting :D

    heise online - 24.02.09 - Unix/Linux-Shell Bash in Version 4

  • Zitat von winfreak

    Ähm, ich hab davon ja keine ahnung... aber was is da jetze so toll drann? :/


    Mehr Scripting Power :D

    Bash ist die Standard-Shell bei den meisten Linux-Distributionen. Und damit ein bisschen auch Standard-Shell für Shellscripte.

    Sprich: Das, womit ich alltägliche Probleme löse, wie mit einem Befehl tausend Fotos verkleinern und umbenenne, mir MindMaps aus HTML-Inhaltsverzeichnisse generieren lasse und Rapidshare-Downloader schreibe.

    Als Windowsler kennt man den Komfort der Konsole halt nicht so (im Gegenteil, man hält es meist sogar für Unbeqeuem), aber es ist halt die Stelle, wo alle Werkzeuge zusammenfliessen.

  • Zitat von gandro


    Mehr Scripting Power :D

    Bash ist die Standard-Shell bei den meisten Linux-Distributionen. Und damit ein bisschen auch Standard-Shell für Shellscripte.

    Sprich: Das, womit ich alltägliche Probleme löse, wie mit einem Befehl tausend Fotos verkleinern und umbenenne, mir MindMaps aus HTML-Inhaltsverzeichnisse generieren lasse und Rapidshare-Downloader schreibe.

    Als Windowsler kennt man den Komfort der Konsole halt nicht so (im Gegenteil, man hält es meist sogar für Unbeqeuem), aber es ist halt die Stelle, wo alle Werkzeuge zusammenfliessen.


    Oo? Geht DAS MIT BASH?

    Ich besorg mir weder debian und lern mich ein :D hört sich interresant an

  • Zitat von winfreak

    Oo? Geht DAS MIT BASH?

    Ich besorg mir weder debian und lern mich ein :D hört sich interresant an


    Naja, nicht mit bash alleine. Sind halt all die anderen Tools (wget für HTTP-Downloads, grep um nach bestimmten Zeichenketten zu suchen etc), die du kombinierst, und bash ist der Kleber dazu :D

  • Zitat von gandro


    Naja, nicht mit bash alleine. Sind halt all die anderen Tools (wget für HTTP-Downloads, grep um nach bestimmten Zeichenketten zu suchen etc), die du kombinierst, und bash ist der Kleber dazu :D

    Dieses bash zeugs, sind doch die .sh skripte? da hab ich mal KURZ was proiert -> ich bin zu blöd -> funzte ned :(

  • Zitat von winfreak

    Dieses bash zeugs, sind doch die .sh skripte?


    Ja.

    Naja, es braucht schon etwas Übung, bis man damit tolle Sachen machen kann, gibt aber im Netz viele gute Seiten, wo das erkärt wird. Ich hab mir damals nen Buch gekauft, hat sich aber irgendwie nicht gelohnt.

  • Am besten lernt man es wenn man ein kleines Problem hat welches man lösen will. Dann braucht man nicht irgendwelchen Beispielen zu folgen in welchen man Anfangs noch keinen Sinn erkennt und hat schon am Anfang kleine Erfolgserlebnisse. Wenn man jemand hat der einem Anfangs mal die wichtigsten Grundregeln erklärt ist das noch besonders praktisch, da man sich nicht alles aus irgendwelchen Howtos heraussaugen muss.

    Zur Bash:
    Wie lange wird das wohl etwa dauern bis die neue Bash mit den Distros ausgeliefert wird? Gibt es für die gängisten Derivate bereits Updates?

  • Beitrag von chessboi (24. Februar 2009 um 12:33)

    Dieser Beitrag wurde gelöscht, Informationen über den Löschvorgang sind nicht verfügbar.
  • Zitat von chessboi

    Am besten lernt man es wenn man ein kleines Problem hat welches man lösen will. Dann braucht man nicht irgendwelchen Beispielen zu folgen in welchen man Anfangs noch keinen Sinn erkennt und hat schon am Anfang kleine Erfolgserlebnisse. Wenn man jemand hat der einem Anfangs mal die wichtigsten Grundregeln erklärt ist das noch besonders praktisch, da man sich nicht alles aus irgendwelchen Howtos heraussaugen muss.

    Zur Bash:
    Wie lange wird das wohl etwa dauern bis die neue Bash mit den Distros ausgeliefert wird? Gibt es für die gängisten Derivate bereits Updates?

    Die Archer sind grad dran :b1:

    Zitat von winfreak

    sind doch die .sh skripte?


    Jo, aber merke (so nebenbei): Dateiendungen haben unter unter linux nichts zu sagen.

  • Zitat von LukeGee

    Die Archer sind grad dran :b1:


    Ja... wobei es etwas länger dauern kann (12h nachm Release noch nicht im Repo ist für Arch Linux "lange" :D), weil halt relativ viele Pakete von bash abhängen.

    Wird also bei den Release-orientierten Distributionen sicherlich einige Wochen brauchen (Debian stable in ein paar Jahren dann, kein Scherz), bis die das aufnehmen, weil eben ne ganze Menge Pakete davon abhängen und überprüft werden müssen.
    Ich denke eher nicht, dass es in Ubuntu 9.04 z.B. bereits dabei sein wird.

    Aber soweit ich sehe, ist bash4 abwärtskompatibel, also müsste es keine all zu schlimmen Überraschungen geben.

    Zitat von LukeGee

    Türlich :b1:
    Es muss nur der Header stimmen (z.B. #!/bin/bash)


    Genau.

    Es ist eigentlich für den Kernel, damit der weiss, womit er es starten soll (weil könnte ja ein Python-Script sein).
    Grundsätzlich kannst du ein Shellscript auch ohne Shebang wiefolgt starten:
    $ bash ListeMitBefehlen.txt

    Ein Shebang (#!/bin/bash) gehört eigentlich aber schon dazu. Erstens, damit man es als vollwertige Executable verwenden kann, zweitens damit auch klar ist, dass es sich um ein Bash-Script handelt, und keiner auf die Idee kommt, es mit sh starten zu wollen.

    Nachtrag:

    Zitat von oreissig

    führt das nicht sowiso die gerade laufende shell aus, wenn man den header weglässt?

    Ja. Aber wie gesagt, der Kernel braucht die Shebang unter anderem auch.
    Wenn du in C z.B. ein Shellscript mit einem der exec() Befehle ausführen willst, geht das bei Shellscripts nur, wenn diese nen Shebang haben.

  • Zitat von winfreak

    ja... man könnte auch ein shell script schreiben ohne endung?



    Linux schaut allgemein nicht auf den Dateinahmen sondern auf den Mime-Type (siehe Wikipedia). Denn wie Göthe schon gesag hatte: "Name ist Schall und Rauch." ;)

    (Guck nur schon wieviele Viren sich unter Windows ausbreiten können in dem sie einen Namen wie "huebsches_bild.jpg.exe" tragen und der User die Option "Bekannte Dateitypen ausblenden" eingeschaltet hat.)

  • Zitat von chessboi

    (Guck nur schon wieviele Viren sich unter Windows ausbreiten können in dem sie einen Namen wie "huebsches_bild.jpg.exe" tragen und der User die Option "Bekannte Dateitypen ausblenden" eingeschaltet hat.)

    Ja, ich versteh sowieso ned wieso Microsoft die Fuktion eingebaut hat, Dateitypen auszublenden ::S // habs immer aus

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!