Diskussion:Linux-Praxisbuch: Shellprogrammierung

Aus Wikibooks
Zur Navigation springen Zur Suche springen

Ich hab's mal bis vor "Quoting" wikifiziert und da und dort Typos u.a. Fehler korrigiert. --gneer 05:38, 29. Jan 2006 (UTC)

Funktionsparameter[Bearbeiten]

Mir ist grad aufgefallen das nirgens was über Funktionsparameter steht. Könnte das bitte jemand ein kurzes Beispiel hinzufügen hinzufügen. --Prog 04:23, 1. Sep. 2007 (CEST)

tr[Bearbeiten]

tr ist imho auch ein nützlicher Befehl z.b. um Leerzeichen durch newlines zu ersetzen.

tr ' ' '\n'

oder andere einfache Übersetzungen, daher auch der Name tr = translate. Ist nicht so mächtig wie sed, aber deutlich einfacher zu erlernen.

Regaleinordnung[Bearbeiten]

Da es hier um Programmierung geht (wie ja auch schon der Titel sagt), habe ich dieses Buch in das neue Regal:Programmierung aufgenommen. Es ist nicht mehr im Regal:EDV gelistet. Ich wollte euch darüber in Kenntnis setzen, falls ihr es auch im Regal:EDV unter Betriebssysteme listen wollt. -- Stefan Majewsky 10:09, 1. Mai 2006 (UTC)

Löschen des Abschnitts "Mustererkennung"[Bearbeiten]

Ich habe einen neuen Abschnitt Mustererkennung eingefügt. Den vorhandenenen Abschnitt Mustererkennung habe ich gelöscht, da die Brklärung der regulären Ausdrücke in grep,sed usw. eigentlich nichts mehr direkt mit der shell-Programmierung zu tun habt. guenter nowak

Plagiat[Bearbeiten]

Wenn man diesen Text über Shellprogrammierung mit http://www.selflinux.org/selflinux/html/shellprogrammierung.html vergleicht, sieht man, das die beiden Texte sich fas vollständig decken. Wer von wem abschreibt, kann ich nicht erkennen, doch finde ich nirgends einen Hinweis, das jemand abschreibt. Das ist meines Erachtens nicht seriös. mfg günter

Unter Versionen/Autoren ist bei der ältesten Version angegeben: "wikifiziert von www.selflinux.org, ursprünglicher Autor: Ronald Schaten". Tatsächlich besteht das Linux-Kompendium zu großen Teilen aus den GFDL-Teilen von SelfLinux, siehe Vorwort. Redoute 08:15, 29. Aug 2006 (UTC)

Aufteilung in Kapitel?[Bearbeiten]

Die Seite ist ja recht gross ... ich würde die aufteilen. (z. B. mit Vorlage:Inhalt – Simon / ?! 15:48, 4. Aug 2006 (UTC)

Wie wäre es, wenn man eine kleine Einteilung nach den verschiedenen UNIX-Shells vornimmt, da diese ja oft alle in einigen Linux-Distributionen vorhanden sind. Ich vermisse z.B. auf welche Shell sich das WikiBook bezieht, ich denke aber mal, dass die Bash gemeint ist. Es ist ja möglich, dass man noch die Korn-Shell und die Sh erläutert und dann nochmal weiterführend auf die Z-Shell eingeht, da diese ja größtenteil kompatibel zu denen ist bzw. zumindest einen Emulationsmodus besitzt. --80.133.215.177 14:03, 4. Apr. 2009 (CEST)

for-Schleife mit Zählvariablen[Bearbeiten]

Ist laut http://www.freeos.com/guides/lsst/ch03sec06.html ohne weiteres machbar. Vielleicht unter Angabe einer freien Quelle korrigieren oder den Seiteninhaber kontaktieren?

Batchdateien unter DOS[Bearbeiten]

Den Abschnitt zu Batchdateien habe ich gelöscht, da er im großen und ganzen falsch war. Soviel mächtiger als DOS-Batchprogramme ist die Shell auch nicht, die Behauptung man solle alles, was mit DOS möglich ist, per alias machen, war Quatsch. Eine Unterscheidung zw. Programmiersprachen und richtigen Programmiersprachen gibt es nicht - es gab nichts, was der Rettung wert gewesen wäre in diesem Abschnitt.

Parameterübergabe in der Praxis[Bearbeiten]

Bei mir funktioniert das mit getopt nicht. Wenn ich z.b. getopt.sh -h eingebe, kommt statt "Anwendung: $(basename $0) [-a] [-b Na ..." ein "getopt: invalid option -- 'h'" und er macht im Skript einfach weiter. Kann das wer verifizieren oder hab ich einfach ein Brett vor dem Kopf?--188.21.238.194 12:40, 18. Feb. 2011 (CET)

Expansion mit dollar-hochkomma[Bearbeiten]

Ein Bot in #bash hat mir folgendes geflüstert: " Bash has a special form of quoting, $'string' in which backslash-character combinations are expanded. For example, IFS=$' \t\n' or echo $'It\'s embedded!' " - das könnte wohl noch in den Artikel. --Itu 16:12, 23. Apr. 2013 (CEST)

read[Bearbeiten]

Das Kommando fehlt noch, obwohl es in den Beispielen vorkommt. --Itu 13:44, 22. Nov. 2013 (CET)

Wäre es nicht besser ein eigenes Buchprojekt Shellprogrammierung zu machen?[Bearbeiten]

Hallo, diese Seite steht im Regal Programmierung und ist gleichzeitig im Namensraum des Buches Linux-Kompendium. Würde es sich bei diesem Ausbaustadium der Seite nicht anbieten, diese in ein eigenes Projekt zu überführen? Für das Linux-Kompendium, welches sich, meiner Vorstellung nach, hauptsächlich an Benutzer und Administratoren richten soll(ich habe nichts gegen Programmierer) scheint mir der Artikel doch über das Ziel hinaus zu gehen. --Peter Littmann 03:49, 23. Dez. 2013 (CET)

Semikolon[Bearbeiten]

Semik* kommt nur einmal vor. Welche Funktion hat das Semikolon genau? --Itu 21:58, 23. Mär. 2014 (CET)

Trennen von Befehlen. Ursprünglich sah der Code so aus, bis ein Laie das verschlimmbessert hat.
#!/bin/sh
# Füge eine 0 vor Zahlen kleiner 10 ein:
if [ $counter -lt 10 ]; then
   number=0$counter; else number=$counter; fi

# Erstelle ein Verzeichnis, wenn es noch nicht existiert:
if [ ! -d $dir ]; then
   mkdir $dir; fi # mkdir: Verzeichnis erstellen
--92.196.2.193 10:29, 24. Mär. 2014 (CET)

Was gilt denn eigentlich als ordentlichste Anordnung von if then ..fi ? --Itu 21:58, 23. Mär. 2014 (CET)

if [ ! -d $dir ]; then
    mkdir $dir   # mkdir: Verzeichnis erstellen
fi
Das ist wohl die verbreitetste Variante. Finde ich auch am besten. Ich habe mal mit grep in Ubuntus /etc in .sh-Dateien gesucht. Ca. 150x "if;then", 4x "if<Zeilenumbruch>then" und einmal als Einzeiler "if;then ...;fi" --92.196.87.4 15:21, 25. Mär. 2014 (CET)
Ich hab mal, wo sinnvoll, Anpassungen vorgenommen. --Buchfreund 13:56, 31. Mär. 2014 (CEST)

export[Bearbeiten]

Zum Variablenexport findet sich scheinbar noch nichts im Text. --Itu 02:31, 15. Mai 2014 (CEST)

Ausrufezeichen[Bearbeiten]

Kommt ebenfalls praktisch nicht vor. --Itu 20:26, 30. Mai 2014 (CEST)

Kommando in geschweiften Klammern[Bearbeiten]

fehlt auch noch. --Itu 11:14, 28. Sep. 2014 (CEST)

  • nee, ist doch da: [1] 77.21.219.238 20:49, 28. Sep. 2014 (CEST)
  • aber ein Semikolon vor der schließenden Klammer fehlte und habe ich ergänzt 77.21.219.238 20:53, 28. Sep. 2014 (CEST)

Noch fehlend[Bearbeiten]

  • exec
  • eval
  • select
  • double brackets [[ ]] bei test
    • done --Itu 17:28, 22. Jan. 2016 (CET)
  • Ausdrücke wie: ${name##*.} , ${name%.*} ,etc -> Parameter-substitution
  • shopt
  • ...

--Itu 14:13, 28. Jan. 2016 (CET)

  • $_ und $-

--Itu 04:03, 20. Sep. 2016 (CEST)

  • Indizierte Variablen / Arrays

--Itu 18:05, 22. Okt. 2018 (CEST)