Buch zu Shell Scripting gesucht

d4mi4n

volksoperator on duty
Hallöchen zusammen,

da ich mich momentan wirklich erstmals intensiv mit Shell Scripting befassen muss (untrerschiedliche Betrienssysteme aber kein Windows), suche ich eine Lektüre in Buchform.
Kann mir da jemand ein gutes Empfehlen? Ist das O'Reilly Classic Shell Scripting kaufenswert?

Edit: es sollte möglichst unabhängig von einer speziellen Shell geschrieben sein. Also kein Bash Coding Buch oder so.
 
Das ist nicht so toll, denn die Shells unterscheiden sich doch teilweise sehr stark.

Da du nicht nur builtins sondern auch viele Programme einsetzt, kommt es auch noch darauf an, auf welchem OS die Shell läuft.

Ich finde mein Shell-Scripting HowTo ist gar nicht so schlecht:
http://wiki.bsdforen.de/howto/shell-scripting

Fang doch damit an und gebe Feedback, dann kann ich es erweitern.
 
Ich kann dir ein Buch empfehlen:

"Shell-Skripte in Unix" (http://www.cul.de/shell.html)

Damit habe ich das skripten gelernt. Hier erlernst du die Grundkenntnisse der Shellprogrammierung und geht auf die Besonderheiten einzelne Shells wie z.b. Bash oder csh ein.
 
Was man als erstes lernen sollte: Programmiere niemals in der csh.
tcsh als normale login shell ist gut, aber zum Programmieren immer was Gescheites nehmen.
Soll es überall funktionieren: sh, ansonsten vielleicht noch bash, weil das auch fast überall zu finden ist. Eine /bin/sh hast du aber überall (unter Solaris aus Kompatiblitätsgründen aber besser /usr/xpg4/bin/sh benutzen).
 
@kai:

Deswegen: http://www.grymoire.com/Unix/CshTop10.txt

Man muss da viel zu viele Unzulänglichkeiten umgehen, damit man vernünftig in csh programmieren kann. Man kann z.B. nicht mal STDERR ohne krude Workarounds umleiten.

Als normale Loginshell unter FreeBSD benutze ich die tcsh, da ist sie meiner Meinung nach brauchbar, aber im Büro schreibe ich so viele Schleifen und turne auf so vielen Servern herum, dass ich da die überall vorhandene bash einsetze, wenn ich die auch nicht so besonders mag, praktisch ist sie aber schon.
 
Joa, das stimmt schon. FreeBSDs /bin/sh ist übrigens eine drastisch modifizierte ash, die ein gewisses Maß an Kompatiblität zu Debian ash hat. In 9.0 ist sie dank diverser Verbesserungen übrigend deutlich schneller geworden und dank einiger schöner Dinge wie eine Vergangenheit und Tab-Vervollständigung zumindest eingeschränkt als Login-Shell nutzbar...

Aber davon einmal abgesehen, ist hier zu Shell-Scripting eigentlich alles gesagt worden. Dennoch will ich noch einmal eine ketzerische Frage stellen: Muss es wirklich Shell sein? Perl und Python sind heute eigentlich überall verfügbar und sind nebenbei schneller, portabler und ermöglichen vor allem meiner bescheidenen Erfahrung nach deutlich besseren und sichereren Code zu schreiben.
 
Danke für die Hinweise.
Ich gehe mal zum Lehmanns und schau dort die Bücher an, dann kann ich evtl. auch gleich ein OpenBSD Set mitnehmen :D
Online ist ok zum nachschlagen aber ich bin irgendwie mehr der Buchtyp.

Yamagi: nicht auf jedem Produktivsystem ist Perl drauf. Leider...
Leider sind es auch viele unterschiedliche Betriebssysteme. Eines sogar mit OpenVMS aber da lass ich die Finger weg, das ist mir zu krank:D


PS: "drastisch modifizierte ash" wenn ich das während meiner Prüfung vor vielen Jahren gewusst hätte......
 
Habe mir von O'Reilly das "Classic Shell Scripting" zugelegt. bin noch nciht sehr weit gekommen, liesst sich aber sehr gut. Bis jetzt kann ich eine Empfehlung aussprechen. Mal schaun wies weitergeht.
 
Zurück
Oben