Rheinwerk Computing < openbook > Rheinwerk Computing - Professionelle Bücher. Auch für Einsteiger.
Professionelle Bücher. Auch für Einsteiger.

 
Shell-Programmierung von Jürgen Wolf
Einführung, Praxis, Referenz
Buch: Shell-Programmierung

Shell-Programmierung
782 S., mit CD, 44,90 Euro
Rheinwerk Computing
ISBN 3-89842-683-1
In den ersten zehn Kapiteln des Buches erfahren Sie alles, was Sie zur Shell-Programmierung wissen müssen. Weitere Kapitel gehen auf die unverzichtbaren Tools grep, sed und awk ein, die in Kombination (oder auch allein) mit der Shellscript-Programmierung zu wertvollen Helfern werden können.

Nutzen Sie die HTML-Version des Buches zum Reinschnuppern oder als immer verfügbare Ergänzung zu Ihrem Buch.

Die gedruckte Version des Buches erhalten Sie in unserem Online-Shop - versandkostenfrei innerhalb Deutschlands und Österreichs.
Zum Online-Shop
Rheinwerk Computing

Vorwort des Autors

Übersicht
Danksagung
Rheinwerk Computing

Vorwort des Gutachters – die Shell: Fluch oder Segen?

Rheinwerk Computing

1 Einführung

1.1 Voraussetzungen an den Leser
  1.1.1 Zielgruppe
  1.1.2 Notation
1.2 Was ist eine Shell?
1.3 Hauptanwendungsgebiet
  1.3.1 Was ist ein Shellscript?
  1.3.2 Vergleich mit anderen Sprachen
1.4 Kommando, Programm oder Shellscript?
  1.4.1 Shell-eigene Kommandos (Builtin-Kommando)
  1.4.2 Aliase in der Shell
  1.4.3 Funktionen in der Shell
  1.4.4 Shellscripts (Shell-Prozeduren)
  1.4.5 Programme (binär)
1.5 Die Shell-Vielfalt
  1.5.1 ksh (Korn-Shell)
  1.5.2 Bash (Bourne-Again-Shell)
  1.5.3 zsh (Z-Shell)
  1.5.4 ash (A-Shell)
  1.5.5 rbash, rzsh (Restricted Shell)
  1.5.6 tcsh (TC-Shell)
  1.5.7 Welche Shell-Variante wird in diesem Buch verwendet?
  1.5.8 rsh und ssh
1.6 Betriebssysteme
1.7 Crashkurs: einfacher Umgang mit der Kommandozeile
  1.7.1 Grundlegende Befehle
  1.7.2 Der Umgang mit Dateien
  1.7.3 Der Umgang mit Verzeichnissen
  1.7.4 Datei- und Verzeichnisnamen
  1.7.5 Gerätenamen
  1.7.6 Dateiattribute
1.8 Shellscripts schreiben und ausführen
  1.8.1 Der Editor
  1.8.2 Der Name des Shellscripts
  1.8.3 Ausführen
  1.8.4 Hintergrundprozess starten
  1.8.5 Ausführende Shell festlegen
  1.8.6 Kommentare
  1.8.7 Stil
  1.8.8 Ein Shellscript beenden
  1.8.9 Testen und Debuggen von Shellscripts
  1.8.10 Shellscript, das ein Shellscript erstellt und ausführt
1.9 Vom Shellscript zum Prozess
  1.9.1 Ist das Shellscript ein Prozess?
  1.9.2 Echte Login-Shell?
1.10 Datenstrom
  1.10.1 Ausgabe umleiten
  1.10.2 Standardfehlerausgabe umleiten
  1.10.3 Eingabe umleiten
  1.10.4 Pipes
  1.10.5 Ein T-Stück mit tee
  1.10.6 Ersatzmuster (Wildcards)
  1.10.7 Brace Extension (Bash und Korn-Shell only)
  1.10.8 Muster-Alternativen (Bash und Korn-Shell only)
  1.10.9 Tilde-Expansion (Bash und Korn-Shell only)
1.11 Empfehlung
Rheinwerk Computing

2 Variablen

2.1 Grundlagen
  2.1.1 Zugriff auf den Wert einer Variablen
  2.1.2 Variablen-Interpolation
2.2 Zahlen
  2.2.1 Integer-Arithmetik (Bourne-Shell, Bash und Korn-Shell)
  2.2.2 Integer-Arithmetik (Bash und Korn-Shell only)
  2.2.3 bc – Rechnen mit Fließkommazahlen und mathematische Funktionen
2.3 Zeichenketten
  2.3.1 Stringverarbeitung
  2.3.2 Erweiterte Funktionen für Bash und Korn-Shell
2.4 Quotings und Kommando-Substitution
  2.4.1 Single und Double Quotings
  2.4.2 Kommando-Substitution – Back Quotes
2.5 Arrays (Bash und Korn-Shell only)
  2.5.1 Werte an Arrays zuweisen
  2.5.2 Eine Liste von Werten an ein Array zuweisen (Bash)
  2.5.3 Eine Liste von Werten an ein Array zuweisen (Korn-Shell)
  2.5.4 Zugreifen auf die einzelnen Elemente eines Arrays
2.6 Variablen exportieren
2.7 Umgebungsvariablen eines Prozesses
2.8 Shell-Variablen
2.9 Automatische Variablen der Shell
  2.9.1 Der Name des Shellscripts – $0
  2.9.2 Die Prozessnummer des Shellscripts – $$
  2.9.3 Der Beendigungsstatus eines Shellscripts – $?
  2.9.4 Die Prozessnummer des zuletzt gestarteten Hintergrundprozesses – $!
  2.9.5 Weitere vordefinierte Variablen der Shell
  2.9.6 Weitere automatische Variablen für Bash und Korn-Shell
Rheinwerk Computing

3 Parameter und Argumente

3.1 Einführung
3.2 Kommandozeilenparameter $1 bis $9
3.3 Besondere Parameter
  3.3.1 Die Variable $*
  3.3.2 Die Variable $@
  3.3.3 Die Variable $#
3.4 Der Befehl shift
3.5 Argumente und Leerzeichen
3.6 Argumente jenseits von $9
  3.6.1 Beliebig viele Argumente (Bash und Korn-Shell only)
3.7 Argumente setzen mit set und Kommando-Substitution
3.8 getopts – Kommandozeilenoptionen auswerten
3.9 Vorgabewerte für Variablen
Rheinwerk Computing

4 Kontrollstrukturen

4.1 Bedingte Anweisung mit if
  4.1.1 Kommandos testen mit if
  4.1.2 Kommandoverkettung über Pipes mit if
4.2 Die else-Alternative für eine if-Verzweigung
4.3 Mehrfache Alternative mit elif
4.4 Das Kommando test
  4.4.1 Ganze Zahlen vergleichen
  4.4.2 Ganze Zahlen vergleichen mit let (Bash und Korn-Shell only)
  4.4.3 Zeichenketten vergleichen
  4.4.4 Zeichenketten vergleichen (Bash und Korn-Shell only)
4.5 Status von Dateien erfragen
4.6 Logische Verknüpfung von Ausdrücken
  4.6.1 Negationsoperator !
  4.6.2 Die UND-Verknüpfung (-a und &&)
  4.6.3 Die ODER-Verknüpfung (-o und ||)
  4.6.4 Klammerung und mehrere logische Verknüpfungen
4.7 Short Circuit-Tests – ergebnisabhängige Befehlsausführung
4.8 Die Anweisung case
  4.8.1 Alternative Vergleichsmuster
  4.8.2 case und Wildcards
  4.8.3 case und Optionen
4.9 Schleifen
4.10 for-Schleife
  4.10.1 Argumente bearbeiten mit for
  4.10.2 for und die Dateinamen-Substitution
  4.10.3 for und die Kommando-Substitution
  4.10.4 for und Array (Bash und Korn Shell only)
  4.10.5 for-Schleife mit Schleifenzähler (Bash only)
4.11 Die while-Schleife
4.12 Die until-Schleife
4.13 Kontrollierte Sprünge
  4.13.1 Der Befehl continue
  4.13.2 Der Befehl break
4.14 Endlosschleifen
Rheinwerk Computing

5 Terminal-Ein- und Ausgabe

5.1 Von Terminals zu Pseudo-Terminals
5.2 Ausgabe
  5.2.1 Der echo-Befehl
  5.2.2 print (Korn-Shell only)
  5.2.3 Der Befehl printf
  5.2.4 Der Befehl tput – Terminalsteuerung
5.3 Eingabe
  5.3.1 Der Befehl read
  5.3.2 (Zeilenweise) Lesen einer Datei mit read
  5.3.3 Zeilenweise mit einer Pipe aus einem Kommando lesen (read)
  5.3.4 Here-Dokumente (Inline-Eingabeumleitung)
  5.3.5 Here-Dokumente mit read verwenden
  5.3.6 Die Variable IFS
  5.3.7 Arrays einlesen mit read (Bash und Korn-Shell only)
  5.3.8 Shell-abhängige Anmerkungen zu read
  5.3.9 Einzelnes Zeichen abfragen
  5.3.10 Einzelne Zeichen mit Escape-Sequenzen abfragen
  5.3.11 Passworteingabe
5.4 Umlenken mit dem Befehl exec
5.5 Filedeskriptoren
  5.5.1 Einen neuen Filedeskriptor verwenden
  5.5.2 Die Umlenkung <>
5.6 Named Pipes
5.7 Menüs mit select (Bash und Korn-Shell only)
5.8 dialog und Xdialog
  5.8.1 Entscheidungsfrage --yesno
  5.8.2 Nachrichtenbox mit Bestätigung --msgbox
  5.8.3 Hinweisfenster ohne Bestätigung --infobox
  5.8.4 Text-Eingabezeile --inputbox
  5.8.5 Ein einfacher Dateibetrachter --textbox
  5.8.6 Ein Menü --menu
  5.8.7 Auswahlliste zum Ankreuzen --checklist
  5.8.8 Radiobuttons zum Auswählen --radiolist
  5.8.9 Fortschrittszustand anzeigen --gauge
  5.8.10 Verändern von Aussehen und Ausgabe
  5.8.11 Kleines Beispiel
  5.8.12 Zusammenfassung
5.9 gnuplot – Visualisierung von Messdaten
  5.9.1 Wozu wird gnuplot eingesetzt?
  5.9.2 gnuplot starten
  5.9.3 Das Kommando zum Plotten
  5.9.4 Variablen und Parameter für gnuplot
  5.9.5 Ausgabe von gnuplot umleiten
  5.9.6 Variablen und eigene Funktionen definieren
  5.9.7 Interpretation von Daten aus einer Datei
  5.9.8 Alles bitte nochmals zeichnen (oder besser speichern und laden)
  5.9.9 gnuplot aus einem Shellscript heraus starten (der Batch-Betrieb)
  5.9.10 Plot-Styles und andere Ausgaben festlegen
  5.9.11 Tricks für die Achsen
  5.9.12 Die dritte Dimension
  5.9.13 Zusammenfassung
Rheinwerk Computing

6 Funktionen

6.1 Definition
  6.1.1 Definition (Bash und Korn-Shell only)
  6.1.2 Funktionsaufruf
  6.1.3 Funktionen exportieren
  6.1.4 Aufrufreihenfolge
  6.1.5 Who is who
  6.1.6 Aufruf selbst bestimmen
  6.1.7 Funktionen auflisten
6.2 Funktionen, die Funktionen aufrufen
6.3 Parameterübergabe
  6.3.1 FUNCNAME (Bash only)
6.4 Rückgabewert aus einer Funktion
  6.4.1 Rückgabewert mit return
  6.4.2 Rückgabewert mit echo und einer Kommando-Substitution
  6.4.3 Rückgabewert ohne eine echte Rückgabe (lokale Variable)
  6.4.4 Funktionen und exit
6.5 Lokale contra globale Variablen
  6.5.1 Lokale Variablen (Bash und Korn-Shell only)
6.6 alias und unalias
6.7 Autoload (Korn-Shell only)
Rheinwerk Computing

7 Signale

7.1 Grundlagen zu den Signalen
7.2 Signale senden – kill
7.3 Eine Fallgrube für Signale – trap
  7.3.1 Einen Signalhandler (Funktion) einrichten
  7.3.2 Mit Signalen Schleifendurchläufe abbrechen
  7.3.3 Mit Signalen das Script beenden
  7.3.4 Das Beenden der Shell (oder eines Scripts) abfangen
  7.3.5 Signale ignorieren
  7.3.6 Signale zurücksetzen
Rheinwerk Computing

8 Rund um die Ausführung von Scripts und Prozessen

8.1 Prozessprioritäten
8.2 Warten auf andere Prozesse
8.3 Hintergrundprozess wieder hervorholen
8.4 Hintergrundprozess schützen
8.5 Subshells
8.6 Mehrere Scripts verbinden und ausführen (Kommunikation zwischen Scripts)
  8.6.1 Datenübergabe zwischen Scripts
  8.6.2 Rückgabe von Daten an andere Scripts
  8.6.3 Scripts synchronisieren
8.7 Jobverwaltung
8.8 Shellscripts zeitgesteuert ausführen
8.9 Startprozess- und Profildaten der Shell
  8.9.1 Arten von Initialisierungsdateien
  8.9.2 Ausführen von Profildateien beim Start einer Login-Shell
  8.9.3 Ausführen von Profildateien beim Start einer Nicht-Login-Shell (Bash und Korn-Shell)
  8.9.4 Zusammenfassung alle Profil- und Startup-Dateien
8.10 Ein Shellscript bei der Ausführung
  8.10.1 Syntaxüberprüfung
  8.10.2 Expansionen
  8.10.3 Kommandos
8.11 Shellscripts optimieren
Rheinwerk Computing

9 Nützliche Funktionen

9.1 Der Befehl eval
9.2 xargs
9.3 dirname und basename
9.4 umask
9.5 ulimit (Builtin)
9.6 time
9.7 typeset
Rheinwerk Computing

10 Fehlersuche und Debugging

10.1 Strategien zum Vermeiden von Fehlern
  10.1.1 Planen Sie Ihr Script
  10.1.2 Testsystem bereitstellen
  10.1.3 Ordnung ist das halbe Leben
10.2 Fehlerarten
10.3 Fehlersuche
  10.3.1 Tracen mit set -x
  10.3.2 DEBUG und ERR-Signal
  10.3.3 Variablen und Syntax überprüfen
  10.3.4 Eine Debug-Ausgabe hinzufügen
  10.3.5 Debugging-Tools
Rheinwerk Computing

11 Reguläre Ausdrücke und grep

11.1 Reguläre Ausdrücke – die Theorie
  11.1.1 Elemente für reguläre Ausdrücke (POSIX-RE)
11.2 grep
  11.2.1 Wie arbeitet grep?
  11.2.2 grep mit regulären Ausdrücken
  11.2.3 grep mit Pipes
  11.2.4 grep mit Optionen
  11.2.5 egrep (extended grep)
  11.2.6 fgrep (fixed oder fast grep)
  11.2.7 rgrep
Rheinwerk Computing

12 Der Stream-Editor sed

12.1 Funktions- und Anwendungsweise von sed
  12.1.1 Wohin mit der Ausgabe?
12.2 Der sed-Befehl
12.3 Adressen
12.4 Kommandos, Substitutionsflags und Optionen von sed
  12.4.1 Das a-Kommando – Zeile(n) anfügen
  12.4.2 Das c-Kommando – Zeilen ersetzen
  12.4.3 Das d-Kommando – Zeilen löschen
  12.4.4 Die Kommandos h, H, g, G und x – Arbeiten mit den Puffern
  12.4.5 Das Kommando i – Einfügen von Zeilen
  12.4.6 Das p-Kommando – Patternspace ausgeben
  12.4.7 Das Kommando q – Beenden
  12.4.8 Die Kommandos r und w
  12.4.9 Das Kommando s – substitute
  12.4.10 Das Kommando y
12.5 sed-Scripts
Rheinwerk Computing

13 awk-Programmierung

13.1 Einführung und Grundlagen von awk
  13.1.1 History und Versionen von awk
  13.1.2 Die Funktionsweise von awk
13.2 Aufruf von awk-Programmen
  13.2.1 Grundlegender Aufbau eines awk-Kommandos
  13.2.2 Die Kommandozeilen-Optionen von awk
  13.2.3 awk aus der Kommandozeile aufrufen
  13.2.4 awk in Shellscripts aufrufen
  13.2.5 awk als eigenes Script ausführen
13.3 Grundlegende awk-Programme und -Elemente
  13.3.1 Ausgabe von Zeilen und Zeilennummern
  13.3.2 Felder
13.4 Muster (bzw. Adressen) von awk-Scripts
  13.4.1 Zeichenkettenvergleiche
  13.4.2 Vergleichsausdrücke
  13.4.3 Reguläre Ausdrücke
  13.4.4 Zusammengesetzte Ausdrücke
  13.4.5 BEGIN und END
13.5 Die Komponenten von awk-Scripts
  13.5.1 Variablen
  13.5.2 Arrays
  13.5.3 Operatoren
  13.5.4 Kontrollstrukturen
13.6 Funktionen
  13.6.1 Mathematische Funktionen
  13.6.2 Funktionen für Zeichenketten
  13.6.3 Funktionen für die Zeit
  13.6.4 Systemfunktionen
  13.6.5 Ausgabefunktionen
  13.6.6 Eingabefunktion
  13.6.7 Benutzerdefinierte Funktionen
13.7 Empfehlung
Rheinwerk Computing

14 Linux-UNIX-Kommandoreferenz

14.1 Kurzübersicht
14.2 Dateiorientierte Kommandos
  bzcat – Ausgabe von bzip2-komprimierten Dateien
  cat – Datei(en) nacheinander ausgeben
  chgrp – Gruppe von Dateien oder Verzeichnissen ändern
  cksum/md5sum/sum – eine Prüfsumme für eine Datei ermitteln
  chmod – Zugriffsrechte von Dateien oder Verzeichnissen ändern
  chown – Eigentümer von Dateien oder Verzeichnissen ändern
  cmp – Dateien miteinander vergleichen
  comm – zwei sortierte Textdateien miteinander vergleichen
  cp – Dateien kopieren
  csplit – Zerteilen von Dateien (kontextabhängig)
  cut – Zeichen oder Felder aus Dateien herausschneiden
  diff – Vergleichen zweier Dateien
  diff3 – Vergleich von drei Dateien
  dos2unix – Dateien vom DOS- in UNIX-Format umwandeln
  expand – Tabulatoren in Leerzeichen umwandeln
  file – den Inhalt von Dateien analysieren
  find – Suchen nach Dateien
  fold – einfaches Formatieren von Dateien
  head – Anfang einer Datei ausgeben
  less – Datei(en) seitenweise ausgeben
  ln – Links auf eine Datei erzeugen
  ls – Verzeichnisinhalt auflisten
  more – Datei(en) seitenweise ausgeben
  mv – Datei(en) und Verzeichnisse verschieben oder umbenennen
  nl – Datei mit Zeilennummer ausgeben
  od – Datei(en) hexadezimal bzw. oktal ausgeben
  paste – Dateien spaltenweise verknüpfen
  pcat – Ausgabe von pack-komprimierten Dateien
  rm – Dateien und Verzeichnisse löschen
  sort – Dateien sortieren
  split – Dateien in mehrere Teile zerlegen
  tac – Dateien rückwärts ausgeben
  tail – Ende einer Datei ausgeben
  tee – Ausgabe duplizieren
  touch – Anlegen von Dateien oder Zeitstempel verändern
  tr – Zeichen ersetzen bzw. Umformen von Dateien
  type – Kommandos klassifizieren
  umask – Dateierstellungsmaske ändern bzw. ausgeben
  uniq – doppelte Zeilen nur einmal ausgeben
  unix2dos – Dateien vom UNIX- in DOS-Format umwandeln
  wc – Zeilen, Wörter und Zeichen einer Datei zählen
  whereis – Suche nach Dateien
  zcat, zless, zmore – (seitenweise) Ausgabe von gunzip-komprimierten Dateien
14.3 Verzeichnisorientierte Kommandos
  basename – gibt den Dateianteil eines Pfadnamens zurück
  cd – Verzeichnis wechseln
  dircmp – Verzeichnisse rekursiv vergleichen
  dirname – Verzeichnisanteil eines Pfadnamens zurückgeben
  mkdir – ein Verzeichnis anlegen
  pwd – Ausgeben des aktuellen Arbeitsverzeichnisses
  rmdir – ein leeres Verzeichnis löschen
14.4 Verwaltung von Benutzern und Gruppe
  exit, logout – eine Session (Sitzung) beenden
  finger – Informationen zu anderen Benutzern abfragen
  groupadd, groupmod, groupdel – Gruppenverwaltung (distributionsabhängig)
  groups – Gruppenzugehörigkeit ausgeben
  id – eigene Benutzer- und Gruppen-ID ermitteln
  last – An- und Abmeldezeit eines Benutzers ermitteln
  logname – Name des aktuellen Benutzers anzeigen
  newgrp – Gruppenzugehörigkeit kurzzeitig wechseln (betriebssystemspezifisch)
  passwd – Passwort ändern bzw. vergeben
  useradd/adduser, userdel, usermod – Benutzerverwaltung (distributionsabhängig)
  who – eingeloggte Benutzer anzeigen
  whoami – Name des aktuellen Benutzers anzeigen
14.5 Programm- und Prozessverwaltung
  at – Kommando zu einem bestimmten Zeitpunkt ausführen lassen
  batch – Kommando irgendwann später ausführen lassen
  bg – einen angehaltenen Prozess im Hintergrund fortsetzen
  cron/crontab – Programme in bestimmten Zeitintervallen ausführen lassen
  fg – einen angehaltenen Prozess im Vordergrund fortsetzen
  jobs – Anzeigen angehaltener bzw. im Hintergrund laufender Prozesse
  kill – Signale an Prozesse mit einer Prozessnummer senden
  killall – Signale an Prozesse mit einem Prozessnamen senden
  nice – Prozesse mit anderer Priorität ausführen lassen
  nohup – Prozesse beim Beenden einer Sitzung weiterlaufen lassenHH
  ps – Prozessinformationen anzeigen
  pgrep – Prozesse über ihren Namen finden
  pstree – Prozesshierachie in Baumform ausgeben
  renice – Priorität laufender Prozesse verändern
  sleep – Prozesse suspendieren (schlafen legen)
  su – Ändern der Benutzerkennung (ohne Neuanmeldung)
  sudo – Programm als anderer Benutzer ausführen
  time – Zeitmessung für Prozesse
  top – Prozesse nach CPU-Auslastung anzeigen (betriebssystemspezifisch)
14.6 Speicherplatzinformationen
  df – Abfrage des benötigten Speicherplatzes für die Dateisysteme
  du – Größe eines Verzeichnisbaums ermitteln
  free – verfügbaren Speicherplatz (RAM und Swap) anzeigen (betriebssystemabhängig)
  swap – Swap-Space anzeigen (nicht Linux)
14.7 Dateisystem-Kommandos
  badblocks – überprüft, ob ein Datenträger defekte Sektoren hat
  cfdisk – Partitionieren von Festplatten
  dd – Datenblöcke zwischen Device (Low Level) kopieren (und konvertieren)
  dd_rescue – fehlertolerantes Kopieren von Dateiblöcken
  dumpe2fs – zeigt Informationen über ein ext2/ext3-Dateisystem an
  e2fsck – repariert ein ext2/ext3-Dateisystem
  fdformat – formatiert eine Diskette
  fdisk – Partitionieren von Speichermedien
  fsck – Reparieren und Überprüfen von Dateisystemen
  mkfs – Dateisystem einrichten
  mkswap – eine Swap-Partition einrichten
  mount, umount – An- bzw. Abhängen eines Dateisystems
  parted – Partitionen anlegen, verschieben, vergrößern oder verkleinern
  prtvtoc – Partitionstabellen ausgeben
  swapon, swapoff – Swap-Datei oder Partition (de)aktivieren
  sync – alle gepufferten Schreiboperationen ausführen
14.8 Archivierung und Backup
  bzip2/bunzip2 – (De-)Komprimieren von Dateien
  compress/uncompress – (De-)Komprimieren von Dateien
  cpio, afio – Dateien und Verzeichnisse archivieren
  crypt – Dateien verschlüsseln
  dump/restore bzw. ufsdump/ufsrestore – Vollsicherung bzw. Wiederherstellen eines Dateisystems
  gzip/gunzip – (De-)Komprimieren von Dateien
  mt – Streamer steuern
  pack/unpack – (De-)Komprimieren von Dateien
  tar – Dateien und Verzeichnisse archivieren
  zip/unzip – (De-)Komprimieren von Dateien
  Übersicht zu Dateiendungen und den Pack-Programmen
14.9 Systeminformationen
  cal – zeigt einen Kalender an
  date – Datum und Uhrzeit
  uname – Rechnername, Architektur und OS ausgeben
  uptime – Laufzeit des Rechners
14.10 System-Kommandos
  dmesg – letzte Boot-Meldung des Kernels anzeigen
  halt – alle laufenden Prozesse beenden
  reboot – alle laufenden Prozesse beenden und System neu starten
  shutdown – System herunterfahren
14.11 Druckeradministration
14.12 Netzwerkbefehle
  arp – Ausgeben von MAC-Adressen
  ftp – Dateien zu einem anderen Rechner übertragen
  hostname – Rechnername ermitteln
  ifconfig – Netzwerkzugang konfigurieren
  mail/mailx – E-Mails schreiben und empfangen (und auswerten)
  uuencode/uudecode – Text- bzw. Binärdateien codieren
  netstat – Statusinformationen über das Netzwerk
  nslookup (host/dig) – DNS-Server abfragen
  ping – Verbindung zu anderem Rechner testen
  Die r-Kommandos von Berkeley (rcp, rlogin, rsh, rwho)
  ssh – sichere Shell auf anderem Rechner starten
  scp – Dateien kopieren zwischen unterschiedlichen Rechnern
  rsync – Replizieren von Dateien und Verzeichnissen
  traceroute – Route zu einem Rechner verfolgen
14.13 Benutzerkommunikation
  wall – Nachrichten an alle Benutzer verschicken
  write – Nachrichten an andere Benutzer verschicken
  mesg – Nachrichten auf die Dialogstation zulassen oder unterbinden
14.14 Bildschirm- und Terminalkommandos
  clear – Löschen des Bildschirms
  reset – Zeichensatz für ein Terminal wiederherstellen
  setterm – Terminal-Einstellung verändern
  stty – Terminal-Einstellung abfragen oder setzen
  tty – Terminal-Name erfragen
  tput – Terminal- und Cursorsteuerung
14.15 Online-Hilfen
  apropos – nach Schlüsselwörtern in man-Seiten suchen
  info – GNU-Online-Manual
  man – die traditionelle Online-Hilfe
  whatis – Kurzbeschreibung zu einem Kommando
14.16 Alles rund um PostScript-Kommandos
14.17 Gemischte Kommandos
  alias/unalias – Kurznamen für Kommandos vergeben bzw. löschen
  bc – Taschenrechner
  printenv bzw. env – Umgebungsvariablen anzeigen
Rheinwerk Computing

15 Die Praxis

15.1 Alltägliche Lösungen
  15.1.1 Auf alphabetische und numerische Zeichen prüfen
  15.1.2 Auf Integer überprüfen
  15.1.3 echo mit oder ohne -n
15.2 Datei-Utilities
  15.2.1 Leerzeichen im Dateinamen ersetzen
  15.2.2 Dateiendungen verändern
  15.2.3 Nach veränderten Dateien in zwei Verzeichnissen vergleichen
15.3 Systemadministration
  15.3.1 Benutzerverwaltung
  15.3.2 Systemüberwachung
15.4 Backup-Strategien
  15.4.1 Warum ein Backup?
  15.4.2 Sicherungsmedien
  15.4.3 Varianten der Sicherungen
  15.4.4 Bestimmte Bereiche sichern
  15.4.5 Backup über ssh mit tar
  15.4.6 Daten mit rsync synchronisieren
  15.4.7 Dateien und Verzeichnisse per E-Mail versenden
  15.4.8 Startup-Scripts
15.5 World Wide Web und HTML
  15.5.1 Analysieren von access_log (Apache)
  15.5.2 Analysieren von error_log (Apache)
15.6 CGI (Common Gateway Interface)
  15.6.1 CGI-Scripts ausführen
  15.6.2 CGI-Environment ausgeben
  15.6.3 Einfache Ausgabe als Text
  15.6.4 Ausgabe als HTML formatieren
  15.6.5 Systeminformationen ausgeben
  15.6.6 Kontaktformular
  15.6.7 Noch ein Tipp
Rheinwerk Computing

A Anhang

A.1 Shell-Builtin-Befehle
A.2 Externe Kommandos
A.3 Shell-Optionen
A.4 Shell-Variablen
A.5 Kommandozeile editieren
A.6 Wichtige Tastenkürzel (Kontrolltasten)
A.7 Initialisierungsdateien der Shells
A.8 Signale
A.9 Sonderzeichen und Zeichenklassen
Rheinwerk Computing

Index



Ihr Kommentar

Wie hat Ihnen das <openbook> gefallen? Wir freuen uns immer όber Ihre freundlichen und kritischen Rόckmeldungen.

>> Zum Feedback-Formular
 
  
  Zum Katalog
Zum Katalog: Shell-Programmierung
Shell-Programmierung
bestellen
 Buchtipps
Zum Katalog: Shell-Programmierung






 Shell-Programmierung


Zum Katalog: Linux-Server






 Linux-Server


Zum Katalog: Das Komplettpaket LPIC-1 & LPIC-2






 Das Komplettpaket
 LPIC-1 & LPIC-2


Zum Katalog: Linux-Hochverfόgbarkeit






 Linux-
 Hochverfόgbarkeit


Zum Katalog: Linux Handbuch






 Linux Handbuch


 Shopping
Versandkostenfrei bestellen in Deutschland und Österreich
InfoInfo





Copyright © Rheinwerk Verlag GmbH 2004
Für Ihren privaten Gebrauch dürfen Sie die Online-Version natürlich ausdrucken. Ansonsten unterliegt das <openbook> denselben Bestimmungen, wie die gebundene Ausgabe: Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt. Alle Rechte vorbehalten einschließlich der Vervielfältigung, Übersetzung, Mikroverfilmung sowie Einspeicherung und Verarbeitung in elektronischen Systemen.


[Rheinwerk Computing]

Rheinwerk Verlag GmbH, Rheinwerkallee 4, 53227 Bonn, Tel.: 0228.42150.0, Fax 0228.42150.77, service@rheinwerk-verlag.de