Shell-Programmierung: das umfassende Handbuch ; [Einführung, Praxis, Referenz ; Bourne-, Korn- und Bourne-Again-Shell (Bash) ; inkl. grep, sed und awk, GUIs mit Tcl/Tk ; DVD-ROM Openbooks zu Linux und C, Video-Lektionen (2:00 Std.) zu Ubuntu, alle Beispiele des Buches]
Gespeichert in:
1. Verfasser: | |
---|---|
Format: | Buch |
Sprache: | German |
Veröffentlicht: |
Bonn
Galileo Press
2008
|
Ausgabe: | 2., aktualisierte Aufl. |
Schriftenreihe: | Galileo computing
|
Schlagworte: | |
Online-Zugang: | Inhaltstext Ausführliche Beschreibung Inhaltsverzeichnis |
Beschreibung: | 804 S. Ill., graph. Darst. 1 DVD-ROM (12 cm) |
ISBN: | 9783836211574 3836211572 |
Internformat
MARC
LEADER | 00000nam a2200000 c 4500 | ||
---|---|---|---|
001 | BV023275139 | ||
003 | DE-604 | ||
005 | 20100812 | ||
007 | t | ||
008 | 080424s2008 ad|| |||| 00||| ger d | ||
016 | 7 | |a 985978783 |2 DE-101 | |
020 | |a 9783836211574 |c Pp. : EUR 39.90 (DE), EUR 41.10 (AT), sfr 67.90 |9 978-3-8362-1157-4 | ||
020 | |a 3836211572 |c Pp. : EUR 39.90 (DE), EUR 41.10 (AT), sfr 67.90 |9 3-8362-1157-2 | ||
035 | |a (OCoLC)199290405 | ||
035 | |a (DE-599)BVBBV023275139 | ||
040 | |a DE-604 |b ger |e rakddb | ||
041 | 0 | |a ger | |
049 | |a DE-703 |a DE-863 |a DE-860 |a DE-1051 |a DE-20 |a DE-861 |a DE-523 |a DE-634 |a DE-1047 |a DE-83 |a DE-11 | ||
082 | 0 | |a 004 | |
082 | 0 | |a 005.133 |2 22/ger | |
084 | |a ST 250 |0 (DE-625)143626: |2 rvk | ||
084 | |a ST 261 |0 (DE-625)143633: |2 rvk | ||
084 | |a 004 |2 sdnb | ||
100 | 1 | |a Wolf, Jürgen |d 1974- |e Verfasser |0 (DE-588)132691256 |4 aut | |
245 | 1 | 0 | |a Shell-Programmierung |b das umfassende Handbuch ; [Einführung, Praxis, Referenz ; Bourne-, Korn- und Bourne-Again-Shell (Bash) ; inkl. grep, sed und awk, GUIs mit Tcl/Tk ; DVD-ROM Openbooks zu Linux und C, Video-Lektionen (2:00 Std.) zu Ubuntu, alle Beispiele des Buches] |c Jürgen Wolf |
250 | |a 2., aktualisierte Aufl. | ||
264 | 1 | |a Bonn |b Galileo Press |c 2008 | |
300 | |a 804 S. |b Ill., graph. Darst. |e 1 DVD-ROM (12 cm) | ||
336 | |b txt |2 rdacontent | ||
337 | |b n |2 rdamedia | ||
338 | |b nc |2 rdacarrier | ||
490 | 0 | |a Galileo computing | |
650 | 0 | 7 | |a UNIX |0 (DE-588)4061835-3 |2 gnd |9 rswk-swf |
650 | 0 | 7 | |a LINUX |0 (DE-588)4337730-0 |2 gnd |9 rswk-swf |
650 | 0 | 7 | |a Befehlsvorrat |0 (DE-588)4129931-0 |2 gnd |9 rswk-swf |
650 | 0 | 7 | |a CD-ROM |0 (DE-588)4139307-7 |2 gnd |9 rswk-swf |
650 | 0 | 7 | |a SHELL |g Programmiersprache |0 (DE-588)4116486-6 |2 gnd |9 rswk-swf |
655 | 7 | |0 (DE-588)4188171-0 |a Verzeichnis |2 gnd-content | |
689 | 0 | 0 | |a LINUX |0 (DE-588)4337730-0 |D s |
689 | 0 | 1 | |a SHELL |g Programmiersprache |0 (DE-588)4116486-6 |D s |
689 | 0 | |5 DE-604 | |
689 | 1 | 0 | |a UNIX |0 (DE-588)4061835-3 |D s |
689 | 1 | 1 | |a SHELL |g Programmiersprache |0 (DE-588)4116486-6 |D s |
689 | 1 | |5 DE-604 | |
689 | 2 | 0 | |a SHELL |g Programmiersprache |0 (DE-588)4116486-6 |D s |
689 | 2 | 1 | |a Befehlsvorrat |0 (DE-588)4129931-0 |D s |
689 | 2 | 2 | |a CD-ROM |0 (DE-588)4139307-7 |D s |
689 | 2 | |8 1\p |5 DE-604 | |
856 | 4 | 2 | |q text/html |u http://deposit.dnb.de/cgi-bin/dokserv?id=3013198&prov=M&dok_var=1&dok_ext=htm |3 Inhaltstext |
856 | 4 | 2 | |q text/html |u http://www.galileocomputing.de/katalog/buecher/titel/gp/titelID-1712?GalileoSession=55155900A3-KHz-ZN7s |3 Ausführliche Beschreibung |
856 | 4 | 2 | |m HBZ Datenaustausch |q application/pdf |u http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=016460052&sequence=000002&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA |3 Inhaltsverzeichnis |
883 | 1 | |8 1\p |a cgwrk |d 20201028 |q DE-101 |u https://d-nb.info/provenance/plan#cgwrk | |
943 | 1 | |a oai:aleph.bib-bvb.de:BVB01-016460052 |
Datensatz im Suchindex
DE-BY-863_location | 1000 |
---|---|
DE-BY-FWS_call_number | 1000/ST 261 U61 W854(2)st |
DE-BY-FWS_katkey | 309015 |
DE-BY-FWS_media_number | 083101003915 |
_version_ | 1808860318725570560 |
adam_text |
Inhalt
Vorwort des Autors 23
Vorwort des Gutachters - die Shell: Fluch oder Segen? 27
1.1 Voraussetzungen an den Leser 29
1.1.1 Zielgruppe 30
1.1.2 Notation 31
1.2 Was ist eine Shell? 32
1.3 Hauptanwendungsgebiet 34
1.3.1 Was ist ein Shellscript? 35
1.3.2 Vergleich mit anderen Sprachen 36
1.4 Kommando, Programm oder Shellscript? 38
1.4.1 Shell-eigene Kommandos (Builtin-Kommando) 38
1.4.2 Aliasein der Shell 38
1.4.3 Funktionen in der Shell 39
1.4.4 Shellscripts (Shell-Prozeduren) 39
1.4.5 Programme (binär) 39
1.5 Die Shell-Vielfalt 40
1.5.1 ksh (Korn-Shell) 40
1.5.2 Bash (Bourne-Again-Shell) 41
1.5.3 zsh (Z-Shell) 41
1.5.4 ash(A-Shell) 41
1.5.5 rbash, rzsh (Restricted Shell) 41
1.5.6 tcsh (TC-Shell) 42
1.5.7 Welche Shell-Variante wird in diesem Buch
verwendet? 42
1.5.8 rshundssh 43
1.6 Betriebssysteme 43
1.7 Crashkurs: einfacher Umgang mit der Kommandozeile 44
1.7.1 Grundlegende Befehle 44
1.7.2 Der Umgang mit Dateien 45
1.7.3 Der Umgang mit Verzeichnissen 49
1.7.4 Datei-und Verzeichnisnamen 53
1.7.5 Gerätenamen 53
1.7.6 Dateiattribute 54
1.8 Shellscripts schreiben und ausführen 57
1.8.1 Der Editor 57
1.8.2 Der Name des Shellscripts 57
1.8.3 Ausführen 58
1.8.4 Hintergrundprozess starten 61
1.8.5 Ausführende Shell festlegen 62
1.8.6 Kommentare 65
1.8.7 Stil 65
1.8.8 Ein Shellscript beenden 66
1.8.9 Testen und Debuggen von Shellscripts 68
1.8.10 Shellscript, das ein Shellscript erstellt und ausführt 69
1.9 Vom Shellscript zum Prozess 71
1.9.1 Ist das Shellscript ein Prozess? 72
1.9.2 Echte Login-Shell? 73
1.10 Datenstrom 74
1.10.1 Ausgabe umleiten 75
1.10.2 Standardfehlerausgabe umleiten 77
1.10.3 Eingabe umleiten 80
1.10.4 Pipes 83
1.10.5 Ein T-Stück mittee 84
1.10.6 Ersatzmuster (Wildcards) 86
1.10.7 Brace Extension (Bash und Korn-Shell only) 90
1.10.8 Muster-Alternativen (Bash und Korn-Shell only) 91
1.10.9 Tilde-Expansion (Bash und Korn-Sheli only) 91
1.11 Empfehlung 92
2.1 Grundlagen 93
2.1.1 Zugriff auf den Wert einer Variablen 93
2.1.2 Variablen-Interpolation 94
2.2 Zahlen 98
2.2.1 Integer-Arithmetik (Bourne-Shell, Bash und
Korn-Shell) 99
2.2.2 Integer-Arithmetik (Bash und Korn-Shell only) 101
2.2.3 bc - Rechnen mit Fließkommazahlen und
mathematische Funktionen 104
2.3 Zeichenketten 107
2.3.1 Stringverarbeitung 108
2.3.2 Erweiterte Funktionen für Bash und Korn-Shell 115
2.4 Quotings und Kommando-Substitution 118
2.4.1 Single und Double Quotings 119
2.4.2 Kommando-Substitution - Back Quotes 121
2.5 Arrays (Bash und Korn-Shell only) 124
2.5.1 Werte an Arrays zuweisen 125
2.5.2 Eine Liste von Werten an ein Array zuweisen (Bash) 126
2.5.3 Eine Liste von Werten an ein Array zuweisen
(Korn-Shell) 126
2.5.4 Zugreifen auf die einzelnen Elemente eines Arrays 126
2.6 Variablen exportieren 130
2.7 Umgebungsvariablen eines Prozesses 136
2.8 Shell-Variablen 137
2.9 Automatische Variablen der Shell 142
2.9.1 Der Name des Shellscripts - $0 142
2.9.2 Die Prozessnummer des Shellscripts-$$ 143
2.9.3 Der Beendigungsstatus eines Shellscripts-$? 144
2.9.4 Die Prozessnummer des zuletzt gestarteten Hinter¬
grundprozesses - $! 144
2.9.5 Weitere vordefinierte Variablen der Shell 145
2.9.6 Weitere automatische Variablen für Bash und
Korn-Shell 145
3.1 Einführung 149
3.2 Kommandozeilenparameter $1 bis $9 149
3.3 Besondere Parameter 151
3.3.1 Die Variable $* 151
3.3.2 Die Variable $@ 153
3.3.3 Die Variable $# 153
3.4 Der Befehl shift 154
3.5 Argumente und Leerzeichen 156
3.6 Argumente jenseits von $9 157
3.6.1 Beliebig viele Argumente (Bash und Korn-Shell only) . 158
3.7 Argumente setzen mit set und Kommando-Substitution 159
3.8 getopts - Kommandozeilenoptionen auswerten 162
3.9 Vorgabewerte für Variablen 165
4.1 Bedingte Anweisung mit if 169
4.1.1 Kommandos testen mit if 171
4.1.2 Kommandoverkettung über Pipes mit if 173
4.2 Die else-Alternative für eine if-Verzweigung 177
4.3 Mehrfache Alternative mit elif 179
4.4 Das Kommando test 182
4.4.1 Ganze Zahlen vergleichen 183
4.4.2 Ganze Zahlen vergleichen mit let (Bash und
Korn-Shell only) 185
4.4.3 Zeichenketten vergleichen 186
4.4.4 Zeichenketten vergleichen (Bash und Korn-Shell
only) 191
4.5 Status von Dateien erfragen 194
4.6 Logische Verknüpfung von Ausdrücken 197
4.6.1 Negationsoperator! 198
4.6.2 Die UND-Verknüpfung (-a und ) 199
4.6.3 Die ODER-Verknüpfung (-o und 11) 201
4.6.4 Klammerung und mehrere logische Verknüpfungen 202
4.7 Short Circuit-Tests - ergebnisabhängige Befehlsausführung 203
4.8 Die Anweisung case 206
4.8.1 Alternative Vergleichsmuster 209
4.8.2 case und Wildcards 210
4.8.3 case und Optionen 212
4.9 Schleifen 213
4.10 for-Schleife 214
4.10.1 Argumente bearbeiten mit for 215
4.10.2 for und die Dateinamen-Substitution 216
4.10.3 for und die Kommando-Substitution 218
4.10.4 for und Array (Bash und Korn Shell only) 221
4.10.5 for-Schleife mit Schleifenzähler (Bash only) 222
4.11 Die while-Schleife 224
4.12 Die until-Schleife 226
4.13 Kontrollierte Sprünge 229
4.13.1 Der Befehl continue 230
4.13.2 Der Befehl break 231
4.14 Endlosschleifen 233
5.1 Von Terminals zu Pseudo-Terminals 237
5.2 Ausgabe 239
5.2.1 Der echo-Befehl 240
5.2.2 print (Korn-Shell only) 244
5.2.3 Der Befehl printf 244
5.2.4 Der Befehl tput-Terminalsteuerung 247
5.3 Eingabe 253
5.3.1 Der Befehl read 253
5.3.2 (Zeilenweise) Lesen einer Datei mit read 255
5.3.3 Zeilenweise mit einer Pipe aus einem Kommando
lesen (read) 256
5.3.4 Here-Dokumente (Inline-Eingabeumleitung) 257
5.3.5 Here-Dokumente mit read verwenden 260
5.3.6 Die Variablei FS 261
5.3.7 Arrays einlesen mit read (Bash und Korn-Shell only) 267
5.3.8 Shell-abhängige Anmerkungen zu read 268
5.3.9 Einzelnes Zeichen abfragen 269
5.3.10 Einzelne Zeichen mit Escape-Sequenzen abfragen 270
5.3.11 Passworteingabe 277
5.4 Umlenken mit dem Befehl exec 278
5.5 Filedeskriptoren 281
5.5.1 Einen neuen Filedeskriptor verwenden 282
5.5.2 Die Umlenkung 285
5.6 Named Pipes 286
5.7 Menüs mit select (Bash und Korn-Shell only) 289
5.8 dialog und Xdialog 294
5.8.1 Entscheidungsfrage —yesno 295
5.8.2 Nachrichtenbox mit Bestätigung —msgbox 296
5.8.3 Hinweisfenster ohne Bestätigung--infobox 297
5.8.4 Text-Eingabezeile —inputbox 298
5.8.5 Ein einfacher Dateibetrachter—textbox 299
5.8.6 Ein Menü —menu 300
5.8.7 Auswahlliste zum Ankreuzen —checklist 301
5.8.8 Radiobuttons zum Auswählen —radiolist 302
5.8.9 Fortschrittszustand anzeigen —gauge 302
5.8.10 Verändern von Aussehen und Ausgabe 304
5.8.11 Kleines Beispiel 304
5.8.12 Zusammenfassung 305
5.9 gnuplot-Visualisierung von Messdaten 306
5.9.1 Wozu wird gnuplot eingesetzt? 307
5.9.2 gnuplot starten 308
5.9.3 Das Kommando zum Plotten 308
5.9.4 Variablen und Parameter für gnuplot 309
5.9.5 Ausgabe von gnuplot umleiten 310
5.9.6 Variablen und eigene Funktionen definieren 312
5.9.7 Interpretation von Daten aus einer Datei 313
5.9.8 Alles bitte nochmals zeichnen (oder besser speichern
und laden) 316
5.9.9 gnuplot aus einem Shellscript heraus starten (der
Batch-Betrieb) 317
5.9.10 Plot-Styles und andere Ausgaben festlegen 319
5.9.11 Tricks für die Achsen 325
5.9.12 Die dritte Dimension 329
5.9.13 Zusammenfassung 331
6.1 Definition 333
6.1.1 Definition (Bash und Korn-Shell only) 334
6.1.2 Funktionsaufruf 334
6.1.3 Funktionen exportieren 336
6.1.4 Aufrufreihenfolge 338
6.1.5 Whoiswho 339
6.1.6 Aufruf selbst bestimmen 339
6.1.7 Funktionen auflisten 340
6.2 Funktionen, die Funktionen aufrufen 340
6.3 Parameterübergabe 342
6.3.1 FUNCNAME (Bash only) 345
6.4 Rückgabewert aus einer Funktion 346
6.4.1 Rückgabewert mit return 346
6.4.2 Rückgabewert mit echo und einer Kommando-
Substitution 347
6.4.3 Rückgabewert ohne eine echte Rückgabe (lokale
Variable) 349
6.4.4 Funktionen und exit 350
6.5 Lokale contra globale Variablen 351
6.5.1 Lokale Variablen (Bash und Korn-Shell only) 353
6.6 alias und unalias 355
6.7 Autoload (Korn-Shell only) 357
7.1 Grundlagen zu den Signalen 359
7.2 Signale senden - kill 363
7.3 Eine Fallgrube für Signale - trap 364
7.3.1 Einen Signalhandler (Funktion) einrichten 367
7.3.2 Mit Signalen Schleifendurchläufe abbrechen 370
7.3.3 Mit Signalen das Script beenden 371
7.3.4 Das Beenden der Shell (oder eines Scripts) abfangen 371
7.3.5 Signale ignorieren 373
7.3.6 Signale zurücksetzen 373
8.1 Prozessprioritäten 375
8.2 Warten auf andere Prozesse 376
8.3 Hintergrundprozess wieder hervorholen 377
8.4 Hintergrundprozess schützen 378
8.5 Subshells 379
8.6 Mehrere Scripts verbinden und ausführen (Kommunikation
zwischen Scripts) 381
8.6.1 Datenübergabe zwischen Scripts 381
8.6.2 Rückgabe von Daten an andere Scripts 383
8.6.3 Scripts synchronisieren 386
8.7 Jobverwaltung 388
8.8 Shellscripts zeitgesteuert ausführen 391
8.9 Startprozess-und Profildaten der Shell 396
8.9.1 Arten von Initialisierungsdateien 397
8.9.2 Ausführen von Profildateien beim Start einer
Login-Shell 398
8.9.3 Ausführen von Profildateien beim Start einer
Nicht-Login-Shell (Bash und Korn-Shell) 400
8.9.4 Zusammenfassung alle Profil- und Startup-Dateien 402
8.10 Ein Shellscript bei der Ausführung 404
8.10.1 Syntaxüberprüfung 404
8.10.2 Expansionen 404
8.10.3 Kommandos 404
8.11 Shellscripts optimieren 406
9.1 Der Befehl eval 409
9.2 xargs 412
9.3 dimame und basename 414
9.4 umask 415
9.5 ulimit (Builtin) 416
9.6 time 418
9.7 typeset 419
10.1 Strategien zum Vermeiden von Fehlern 421
10.1.1 Planen Sie Ihr Script 421
10.1.2 Testsystem bereitstellen 422
10.1.3 Ordnung ist das halbe Leben 423
10.2 Fehlerarten 425
10.3 Fehlersuche 426
10.3.1 Tracen mit set-x 427
10.3.2 DEBUG und ERR-Signal 429
10.3.3 Variablen und Syntax überprüfen 434
10.3.4 Eine Debug-Ausgabe hinzufügen 434
10.3.5 Debugging-Tools 435
11.1 Reguläre Ausdrücke - die Theorie 437
11.1.1 Elemente für reguläre Ausdrücke (POSIX-RE) 438
11.2 grep 441
11.2.1 Wie arbeitet grep? 442
11.2.2 grep mit regulären Ausdrücken 443
11.2.3 grep mit Pipes 448
11.2.4 grep mit Optionen 449
11.2.5 egrep (extended grep) 452
11.2.6 fgrep (fixed oder fast grep) 453
11.2.7 rgrep 453
12.1 Funktions-und Anwendungsweise von sed 455
12.1.1 Wohin mit der Ausgabe? 457
12.2 Der sed-Befehl 459
12.3 Adressen 460
12.4 Kommandos, Substitutionsflags und Optionen von sed 462
12.4.1 Das a-Kommando - Zeile(n) anfügen 465
12.4.2 Das c-Kommando - Zeilen ersetzen 466
12.4.3 Das d-Kommando- Zeilen löschen 467
12.4.4 Die Kommandos h, H, g, G und x - Arbeiten mit
den Puffern 467
12.4.5 Das Kommando i - Einfügen von Zeilen 469
12.4.6 Das p-Kommando - Patternspace ausgeben 470
12.4.7 Das Kommando q - Beenden 471
12.4.8 Die Kommandos r und w 471
12.4.9 Das Kommando s - substitute 473
12.4.10 Das Kommando y 477
12.5 sed-Scripts 478
13.1 Einführung und Grundlagen von awk 483
13.1.1 History und Versionen von awk 484
13.1.2 Die Funktionsweise von awk 485
13.2 Aufruf von awk-Programmen 486
13.2.1 Grundlegender Aufbau eines awk-Kommandos 486
13.2.2 Die Kommandozeilen-Optionen von awk 488
13.2.3 awk aus der Kommandozeile aufrufen 489
13.2.4 awk in Shellscripts aufrufen 489
13.2.5 awk als eigenes Script ausführen 491
13.3 Grundlegende awk-Programme und-Elemente 491
13.3.1 Ausgabe von Zeilen und Zeilennummern 492
13.3.2 Felder 493
13.4 Muster (bzw. Adressen) von awk-Scripts 498
13.4.1 Zeichenkettenvergleiche 498
13.4.2 Vergleichsausdrücke 499
13.4.3 Reguläre Ausdrücke 501
13.4.4 Zusammengesetzte Ausdrücke 504
13.4.5 BEGIN und END 504
13.5 Die Komponenten von awk-Scripts 506
13.5.1 Variablen 507
13.5.2 Arrays 512
13.5.3 Operatoren 515
13.5.4 Kontrollstrukturen 522
13.6 Funktionen 527
13.6.1 Mathematische Funktionen 527
13.6.2 Funktionen für Zeichenketten 529
13.6.3 Funktionen für die Zeit 533
13.6.4 Systemfunktionen 535
13.6.5 Ausgabefunktionen 535
13.6.6 Eingabefunktion 536
13.6.7 Benutzerdefinierte Funktionen 539
13.7 Empfehlung 542
14.1 Kurzübersicht 544
14.2 Dateiorientierte Kommandos 551
bzcat - Ausgabe von bzip2-komprimierten Dateien 551
cat - Datei(en) nacheinander ausgeben 551
chgrp - Gruppe von Dateien oder Verzeichnissen ändern 552
cksum/md5sum/sum - eine Prüfsumme für eine Datei
ermitteln 552
chmod - Zugriffsrechte von Dateien oder Verzeichnissen
ändern 553
chown - Eigentümer von Dateien oder Verzeichnissen ändern 554
cmp - Dateien miteinander vergleichen 555
comm - zwei sortierte Textdateien miteinander vergleichen 555
cp-Dateien kopieren 556
csplit - Zerteilen von Dateien (kontextabhängig) 556
cut-Zeichen oder Felder aus Dateien herausschneiden 557
diff - Vergleichen zweier Dateien 557
diff3 - Vergleich von drei Dateien 558
dos2unix - Dateien vom DOS- in UNIX-Format umwandeln 559
expand - Tabulatoren in Leerzeichen umwandeln 559
file-den Inhalt von Dateien analysieren 559
find-Suchen nach Dateien 560
fold - einfaches Formatieren von Dateien 561
head - Anfang einer Datei ausgeben 562
less - Datei(en) seitenweise ausgeben 562
In - Links auf eine Datei erzeugen 563
Is - Verzeichnisinhalt auflisten 563
more - Datei(en) seitenweise ausgeben 564
mv- Datei(en) und Verzeichnisse verschieben oder
umbenennen 564
nl - Datei mit Zeilennummer ausgeben 564
od - Datei(en) hexadezimal bzw. oktal ausgeben 565
paste- Dateien spaltenweise verknüpfen 565
pcat - Ausgabe von pack-komprimierten Dateien 565
rm - Dateien und Verzeichnisse löschen 566
sort- Dateien sortieren 566
split - Dateien in mehrere Teile zerlegen 567
tac-Dateien rückwärts ausgeben 568
tail - Ende einer Datei ausgeben 568
tee-Ausgabe duplizieren 569
touch - Anlegen von Dateien oder Zeitstempel verändern 569
tr-Zeichen ersetzen bzw. Umformen von Dateien 569
type- Kommandos klassifizieren 569
umask- Dateierstellungsmaske ändern bzw. ausgeben 570
uniq - doppelte Zeilen nur einmal ausgeben 570
unix2dos - Dateien vom UNIX- in DOS-Format umwandeln 570
wc - Zeilen, Wörter und Zeichen einer Datei zählen 571
whereis - Suche nach Dateien 571
zcat, zless, zmore - (seitenweise) Ausgabe von
gunzip-komprimierten Dateien 571
14.3 Verzeichnisorientierte Kommandos 572
basename-gibt den Dateianteil eines Pfadnamens zurück 572
cd -Verzeichnis wechseln 572
dircmp-Verzeichnisse rekursiv vergleichen 572
dirname-Verzeichnisanteil eines Pfadnamens zurückgeben 572
mkdir- ein Verzeichnis anlegen 572
pwd-Ausgeben des aktuellen Arbeitsverzeichnisses 573
rmdir- ein leeres Verzeichnis löschen 573
14.4 Verwaltung von Benutzern und Gruppe 573
exit, logout-eine Session (Sitzung) beenden 573
finger- Informationen zu anderen Benutzern abfragen 574
groupadd, groupmod, groupdel - Gruppenverwaltung
(distributionsabhängig) 574
groups - Gruppenzugehörigkeit ausgeben 575
id - eigene Benutzer- und Gruppen-ID ermitteln 575
last - An- und Abmeldezeit eines Benutzers ermitteln 575
logname - Name des aktuellen Benutzers anzeigen 575
newgrp - Gruppenzugehörigkeit kurzzeitig wechseln
(betriebssystemspezifisch) 575
passwd - Passwort ändern bzw. vergeben 576
useradd/adduser, userdel, usermod - Benutzerverwaltung
(distributionsabhängig) 576
who - eingeloggte Benutzer anzeigen 577
whoami - Name des aktuellen Benutzers anzeigen 577
14.5 Programm- und Prozessverwaltung 578
at- Kommando zu einem bestimmten Zeitpunkt ausführen
lassen 578
baten - Kommando irgendwann später ausführen lassen 578
bg - einen angehaltenen Prozess im Hintergrund fortsetzen 579
cron/crontab - Programme in bestimmten Zeitintervallen
ausführen lassen 579
fg-einen angehaltenen Prozess im Vordergrund fortsetzen 579
Jobs - Anzeigen angehaltener bzw. im Hintergrund
laufender Prozesse 580
kill - Signale an Prozesse mit einer Prozessnummer senden 580
killall - Signale an Prozesse mit einem Prozessnamen senden 580
nice - Prozesse mit anderer Priorität ausführen lassen 580
nohup - Prozesse beim Beenden einer Sitzung weiterlaufen
lassen 581
ps - Prozessinformationen anzeigen 581
pgrep - Prozesse über ihren Namen finden 582
pstree-Prozesshierachie in Baumform ausgeben 582
renice - Priorität laufender Prozesse verändern 583
sleep - Prozesse suspendieren (schlafen legen) 583
su-Ändern der Benutzerkennung (ohne Neuanmeldung) 583
sudo - Programm als anderer Benutzer ausführen 584
time - Zeitmessung für Prozesse 585
top - Prozesse nach CPU-Auslastung anzeigen
(betriebssystemspezifisch) 585
14.6 Speicherplatzinformationen 585
df - Abfrage des benötigten Speicherplatzes für die
Dateisysteme 585
du - Größe eines Verzeichnisbaums ermitteln 586
free - verfügbaren Speicherplatz (RAM und Swap) anzeigen
(betriebssystemabhängig) 587
swap - Swap-Space anzeigen (nicht Linux) 587
14.7 Dateisystem-Kommandos 587
badblocks - überprüft, ob ein Datenträger defekte
Sektoren hat 587
cfdisk - Partitionieren von Festplatten 588
dd - Datenblöcke zwischen Device (Low Level) kopieren
(und konvertieren) 588
dd_rescue - fehlertolerantes Kopieren von Dateibtöcken 590
dumpe2fs - zeigt Informationen über ein ext2/ext3-
Dateisystem an 591
e2fsck - repariert ein ext2/ext3-Dateisystem 591
fdformat-formatiert eine Diskette 592
fdisk- Partitionieren von Speichermedien 593
fsck- Reparieren und Überprüfen von Dateisystemen 594
mkfs - Dateisystem einrichten 595
mkswap - eine Swap-Partition einrichten 596
mount, umount-An- bzw. Abhängen eines Dateisystems 597
parted - Partitionen anlegen, verschieben, vergrößern oder
verkleinern 598
prtvtoc - Partitionstabellen ausgeben 598
swapon, swapoff - Swap-Datei oder Partition (de)aktivieren 598
sync - alle gepufferten Schreiboperationen ausführen 598
14.8 Archivierung und Backup 599
bzip2/bunzip2 - (De-)Komprimieren von Dateien 599
compress/uncompress - (De-)Komprimieren von Dateien 600
cpio, afio - Dateien und Verzeichnisse archivieren 600
crypt - Dateien verschlüsseln 603
dump/restore bzw. ufsdump/ufsrestore - Vollsicherung bzw.
Wiederherstellen eines Dateisystems 603
gzip/gunzip - (De-)Komprimieren von Dateien 606
mt - Streamer steuern 607
pack/unpack-(De-)Komprimieren von Dateien 607
tar-Dateien und Verzeichnisse archivieren 608
zip/unzip - (De-)Komprimieren von Dateien 612
Übersicht zu Dateiendungen und den Pack-Programmen 613
14.9 Systeminformationen 613
cal - zeigt einen Kalender an 613
date- Datum und Uhrzeit 614
uname - Rechnername, Architektur und OS ausgeben 614
uptime - Laufzeit des Rechners 615
14.10 System-Kommandos 615
dmesg - letzte Boot-Meldung des Kernels anzeigen 615
halt-alle laufenden Prozesse beenden 615
reboot - alle laufenden Prozesse beenden und System
neu starten 615
shutdown - System herunterfahren 616
14.11 Druckeradministration 617
14.12 Netzwerkbefehle 618
arp -Ausgeben von MAC-Adressen 618
ftp - Dateien zu einem anderen Rechner übertragen 618
hostname - Rechnername ermitteln 624
ifconfig - Netzwerkzugang konfigurieren 624
mail/mailx - E-Mails schreiben und empfangen (und
auswerten) 626
uuencode/uudecode - Text-bzw. Binärdateien codieren 627
netstat - Statusinformationen über das Netzwerk 628
nslookup (host/dig) - DNS-Server abfragen 628
ping-Verbindung zu anderem Rechner testen 629
Die r-Kommandos von Berkeley (rcp, rlogin, rsh, rwho) 630
ssh-sichere Shell auf anderem Rechner starten 630
scp- Dateien kopieren zwischen unterschiedlichen Rechnern 632
rsync- Replizieren von Dateien und Verzeichnissen 633
traceroute- Route zu einem Rechner verfolgen 635
14.13 Benutzerkommunikation 636
wall - Nachrichten an alle Benutzer verschicken 636
write- Nachrichten an andere Benutzer verschicken 636
mesg- Nachrichten auf die Dialogstation zulassen oder
unterbinden 636
14.14 Bildschirm-und Terminalkommandos 637
clear- Löschen des Bildschirms 637
reset - Zeichensatz für ein Terminal wiederherstellen 637
setterm - Terminal-Einstellung verändern 637
stty-Terminal-Einstellung abfragen oder setzen 638
tty - Terminal-Name erfragen 639
tput-Terminal- und Cursorsteuerung 639
14.15 Online-Hilfen 640
apropos - nach Schlüsselwörtern in man-Seiten suchen 640
info - GNU-Online-Manual 640
man - die traditionelle Online-Hilfe 640
whatis - Kurzbeschreibung zu einem Kommando 641
14.16 Alles rund um PostScript-Kommandos 642
14.17 Gemischte Kommandos 642
alias/unalias - Kurznamen für Kommandos vergeben bzw.
löschen 642
bc - Taschenrechner 642
printenv bzw. env - Umgebungsvariablen anzeigen 643
15.1 Alltägliche Lösungen 646
15.1.1 Auf alphabetische und numerische Zeichen prüfen 646
15.1.2 Auf Integer überprüfen 647
15.1.3 echo mit oder ohne-n 649
15.2 Datei-Utilities 650
15.2.1 Leerzeichen im Dateinamen ersetzen 650
15.2.2 Dateiendungen verändern 651
15.2.3 Nach veränderten Dateien in zwei Verzeichnissen
vergleichen 653
15.3 Systemadministration 654
15.3.1 Benutzerverwaltung 655
15.3.2 Systemüberwachung 673
15.4 Backup-Strategien 679
15.4.1 Warum ein Backup? 679
15.4.2 Sicherungsmedien 681
15.4.3 Varianten der Sicherungen 681
15.4.4 Bestimmte Bereiche sichern 682
15.4.5 Backup über ssh mittar 683
15.4.6 Daten mit rsync synchronisieren 689
15.4.7 Dateien und Verzeichnisse per E-Mail versenden 693
15.4.8 Startup-Scripts 695
15.5 World Wide Web und HTML 702
15.5.1 Analysieren von accessjog (Apache) 703
15.5.2 Analysieren von errorjog (Apache) 707
15.6 CGI (Common Gateway Interface) 710
15.6.1 CGI-Scripts ausführen 711
15.6.2 CGI-Environment ausgeben 712
15.6.3 Einfache Ausgabe als Text 713
15.6.4 Ausgabe als HTML formatieren 716
15.6.5 Systeminformationen ausgeben 718
15.6.6 Kontaktformular 720
15.6.7 Noch ein Tipp 724
16.1 Was ist und was kann Tcl/Tk? 725
16.2 Ein Tcl/Tk-Skript starten 726
16.3 Variablen 728
16.4 Einfache Ausgabe 729
16.5 Substitutionsmechanismen 729
16.5.1 Variablensubstitution 729
16.5.2 Befehlssubstitution 730
16.5.3 Backslashsubstitution 730
16.6 Mathematische Ausdrücke 731
16.7 Programmstrukturen 731
16.7.1 Verzweigungen 732
16.7.2 Schleifen 733
16.7.3 Prozeduren (Funktionen) 735
16.8 Listen 736
16.9 Stringverarbeitung 736
16.10 Dateizugriff 736
16.10.1 open 737
16.10.2 puts 737
16.10.3 gets 738
16.10.4 read 739
16.11 Der Rest 739
16.12 Das Tk-Toolkit 739
16.13 Eine Einführung 740
16.14 Eine einfache Schaltfläche - button 741
16.15 Einzeiliges Textfeld - entry 742
16.16 AAehrzeiliger Text und ein Menü - text und menu 743
16.17 Mit Ereignissen verbinden - bind 747
16.18 Layoutmanager (Geometriemanager) -grid und pack 749
16.18.1 pack 749
16.18.2 grid 752
16.19 Eine Scrollleiste - scrollbar 754
16.20 Weitere Eingabe-Widgets - radiobutton, checkbutton, scale und
spinbox 755
16.20.1 radiobutton 755
16.20.2 checkbutton 756
16.20.3 scale 756
16.20.4 spinbox 757
16.20.5 Beispiel 758
16.21 frame und labelframe 760
16.22 Listen - listbox 760
16.23 Darstellen von Grafiken - canvas 762
16.24 Ein geteiltes Fenster-panedwindow 763
16.25 Widgetübersicht 764
16.26 Dialoge (tkj 765
16.27 Tile-Erweiterung (ttkj 765
16.28 Weitere Empfehlungen 766
A.1 Shell-Builtin-Befehle 769
A.2 Externe Kommandos 771
A.3 Shell-Optionen 772
A.4 Shell-Variablen 773
A.5 Kommandozeile editieren 778
A.6 Wichtige Tastenkürzel (Kontrolltasten) 780
A.7 Initialisierungsdateien der Shells 781
A.8 Signale 782
A.9 Sonderzeichen und Zeichenklassen 784
A.10 Die Buch-DVD 785
Index 787 |
adam_txt |
Inhalt
Vorwort des Autors 23
Vorwort des Gutachters - die Shell: Fluch oder Segen? 27
1.1 Voraussetzungen an den Leser 29
1.1.1 Zielgruppe 30
1.1.2 Notation 31
1.2 Was ist eine Shell? 32
1.3 Hauptanwendungsgebiet 34
1.3.1 Was ist ein Shellscript? 35
1.3.2 Vergleich mit anderen Sprachen 36
1.4 Kommando, Programm oder Shellscript? 38
1.4.1 Shell-eigene Kommandos (Builtin-Kommando) 38
1.4.2 Aliasein der Shell 38
1.4.3 Funktionen in der Shell 39
1.4.4 Shellscripts (Shell-Prozeduren) 39
1.4.5 Programme (binär) 39
1.5 Die Shell-Vielfalt 40
1.5.1 ksh (Korn-Shell) 40
1.5.2 Bash (Bourne-Again-Shell) 41
1.5.3 zsh (Z-Shell) 41
1.5.4 ash(A-Shell) 41
1.5.5 rbash, rzsh (Restricted Shell) 41
1.5.6 tcsh (TC-Shell) 42
1.5.7 Welche Shell-Variante wird in diesem Buch
verwendet? 42
1.5.8 rshundssh 43
1.6 Betriebssysteme 43
1.7 Crashkurs: einfacher Umgang mit der Kommandozeile 44
1.7.1 Grundlegende Befehle 44
1.7.2 Der Umgang mit Dateien 45
1.7.3 Der Umgang mit Verzeichnissen 49
1.7.4 Datei-und Verzeichnisnamen 53
1.7.5 Gerätenamen 53
1.7.6 Dateiattribute 54
1.8 Shellscripts schreiben und ausführen 57
1.8.1 Der Editor 57
1.8.2 Der Name des Shellscripts 57
1.8.3 Ausführen 58
1.8.4 Hintergrundprozess starten 61
1.8.5 Ausführende Shell festlegen 62
1.8.6 Kommentare 65
1.8.7 Stil 65
1.8.8 Ein Shellscript beenden 66
1.8.9 Testen und Debuggen von Shellscripts 68
1.8.10 Shellscript, das ein Shellscript erstellt und ausführt 69
1.9 Vom Shellscript zum Prozess 71
1.9.1 Ist das Shellscript ein Prozess? 72
1.9.2 Echte Login-Shell? 73
1.10 Datenstrom 74
1.10.1 Ausgabe umleiten 75
1.10.2 Standardfehlerausgabe umleiten 77
1.10.3 Eingabe umleiten 80
1.10.4 Pipes 83
1.10.5 Ein T-Stück mittee 84
1.10.6 Ersatzmuster (Wildcards) 86
1.10.7 Brace Extension (Bash und Korn-Shell only) 90
1.10.8 Muster-Alternativen (Bash und Korn-Shell only) 91
1.10.9 Tilde-Expansion (Bash und Korn-Sheli only) 91
1.11 Empfehlung 92
2.1 Grundlagen 93
2.1.1 Zugriff auf den Wert einer Variablen 93
2.1.2 Variablen-Interpolation 94
2.2 Zahlen 98
2.2.1 Integer-Arithmetik (Bourne-Shell, Bash und
Korn-Shell) 99
2.2.2 Integer-Arithmetik (Bash und Korn-Shell only) 101
2.2.3 bc - Rechnen mit Fließkommazahlen und
mathematische Funktionen 104
2.3 Zeichenketten 107
2.3.1 Stringverarbeitung 108
2.3.2 Erweiterte Funktionen für Bash und Korn-Shell 115
2.4 Quotings und Kommando-Substitution 118
2.4.1 Single und Double Quotings 119
2.4.2 Kommando-Substitution - Back Quotes 121
2.5 Arrays (Bash und Korn-Shell only) 124
2.5.1 Werte an Arrays zuweisen 125
2.5.2 Eine Liste von Werten an ein Array zuweisen (Bash) 126
2.5.3 Eine Liste von Werten an ein Array zuweisen
(Korn-Shell) 126
2.5.4 Zugreifen auf die einzelnen Elemente eines Arrays 126
2.6 Variablen exportieren 130
2.7 Umgebungsvariablen eines Prozesses 136
2.8 Shell-Variablen 137
2.9 Automatische Variablen der Shell 142
2.9.1 Der Name des Shellscripts - $0 142
2.9.2 Die Prozessnummer des Shellscripts-$$ 143
2.9.3 Der Beendigungsstatus eines Shellscripts-$? 144
2.9.4 Die Prozessnummer des zuletzt gestarteten Hinter¬
grundprozesses - $! 144
2.9.5 Weitere vordefinierte Variablen der Shell 145
2.9.6 Weitere automatische Variablen für Bash und
Korn-Shell 145
3.1 Einführung 149
3.2 Kommandozeilenparameter $1 bis $9 149
3.3 Besondere Parameter 151
3.3.1 Die Variable $* 151
3.3.2 Die Variable $@ 153
3.3.3 Die Variable $# 153
3.4 Der Befehl shift 154
3.5 Argumente und Leerzeichen 156
3.6 Argumente jenseits von $9 157
3.6.1 Beliebig viele Argumente (Bash und Korn-Shell only) . 158
3.7 Argumente setzen mit set und Kommando-Substitution 159
3.8 getopts - Kommandozeilenoptionen auswerten 162
3.9 Vorgabewerte für Variablen 165
4.1 Bedingte Anweisung mit if 169
4.1.1 Kommandos testen mit if 171
4.1.2 Kommandoverkettung über Pipes mit if 173
4.2 Die else-Alternative für eine if-Verzweigung 177
4.3 Mehrfache Alternative mit elif 179
4.4 Das Kommando test 182
4.4.1 Ganze Zahlen vergleichen 183
4.4.2 Ganze Zahlen vergleichen mit let (Bash und
Korn-Shell only) 185
4.4.3 Zeichenketten vergleichen 186
4.4.4 Zeichenketten vergleichen (Bash und Korn-Shell
only) 191
4.5 Status von Dateien erfragen 194
4.6 Logische Verknüpfung von Ausdrücken 197
4.6.1 Negationsoperator! 198
4.6.2 Die UND-Verknüpfung (-a und ) 199
4.6.3 Die ODER-Verknüpfung (-o und 11) 201
4.6.4 Klammerung und mehrere logische Verknüpfungen 202
4.7 Short Circuit-Tests - ergebnisabhängige Befehlsausführung 203
4.8 Die Anweisung case 206
4.8.1 Alternative Vergleichsmuster 209
4.8.2 case und Wildcards 210
4.8.3 case und Optionen 212
4.9 Schleifen 213
4.10 for-Schleife 214
4.10.1 Argumente bearbeiten mit for 215
4.10.2 for und die Dateinamen-Substitution 216
4.10.3 for und die Kommando-Substitution 218
4.10.4 for und Array (Bash und Korn Shell only) 221
4.10.5 for-Schleife mit Schleifenzähler (Bash only) 222
4.11 Die while-Schleife 224
4.12 Die until-Schleife 226
4.13 Kontrollierte Sprünge 229
4.13.1 Der Befehl continue 230
4.13.2 Der Befehl break 231
4.14 Endlosschleifen 233
5.1 Von Terminals zu Pseudo-Terminals 237
5.2 Ausgabe 239
5.2.1 Der echo-Befehl 240
5.2.2 print (Korn-Shell only) 244
5.2.3 Der Befehl printf 244
5.2.4 Der Befehl tput-Terminalsteuerung 247
5.3 Eingabe 253
5.3.1 Der Befehl read 253
5.3.2 (Zeilenweise) Lesen einer Datei mit read 255
5.3.3 Zeilenweise mit einer Pipe aus einem Kommando
lesen (read) 256
5.3.4 Here-Dokumente (Inline-Eingabeumleitung) 257
5.3.5 Here-Dokumente mit read verwenden 260
5.3.6 Die Variablei FS 261
5.3.7 Arrays einlesen mit read (Bash und Korn-Shell only) 267
5.3.8 Shell-abhängige Anmerkungen zu read 268
5.3.9 Einzelnes Zeichen abfragen 269
5.3.10 Einzelne Zeichen mit Escape-Sequenzen abfragen 270
5.3.11 Passworteingabe 277
5.4 Umlenken mit dem Befehl exec 278
5.5 Filedeskriptoren 281
5.5.1 Einen neuen Filedeskriptor verwenden 282
5.5.2 Die Umlenkung 285
5.6 Named Pipes 286
5.7 Menüs mit select (Bash und Korn-Shell only) 289
5.8 dialog und Xdialog 294
5.8.1 Entscheidungsfrage —yesno 295
5.8.2 Nachrichtenbox mit Bestätigung —msgbox 296
5.8.3 Hinweisfenster ohne Bestätigung--infobox 297
5.8.4 Text-Eingabezeile —inputbox 298
5.8.5 Ein einfacher Dateibetrachter—textbox 299
5.8.6 Ein Menü —menu 300
5.8.7 Auswahlliste zum Ankreuzen —checklist 301
5.8.8 Radiobuttons zum Auswählen —radiolist 302
5.8.9 Fortschrittszustand anzeigen —gauge 302
5.8.10 Verändern von Aussehen und Ausgabe 304
5.8.11 Kleines Beispiel 304
5.8.12 Zusammenfassung 305
5.9 gnuplot-Visualisierung von Messdaten 306
5.9.1 Wozu wird gnuplot eingesetzt? 307
5.9.2 gnuplot starten 308
5.9.3 Das Kommando zum Plotten 308
5.9.4 Variablen und Parameter für gnuplot 309
5.9.5 Ausgabe von gnuplot umleiten 310
5.9.6 Variablen und eigene Funktionen definieren 312
5.9.7 Interpretation von Daten aus einer Datei 313
5.9.8 Alles bitte nochmals zeichnen (oder besser speichern
und laden) 316
5.9.9 gnuplot aus einem Shellscript heraus starten (der
Batch-Betrieb) 317
5.9.10 Plot-Styles und andere Ausgaben festlegen 319
5.9.11 Tricks für die Achsen 325
5.9.12 Die dritte Dimension 329
5.9.13 Zusammenfassung 331
6.1 Definition 333
6.1.1 Definition (Bash und Korn-Shell only) 334
6.1.2 Funktionsaufruf 334
6.1.3 Funktionen exportieren 336
6.1.4 Aufrufreihenfolge 338
6.1.5 Whoiswho 339
6.1.6 Aufruf selbst bestimmen 339
6.1.7 Funktionen auflisten 340
6.2 Funktionen, die Funktionen aufrufen 340
6.3 Parameterübergabe 342
6.3.1 FUNCNAME (Bash only) 345
6.4 Rückgabewert aus einer Funktion 346
6.4.1 Rückgabewert mit return 346
6.4.2 Rückgabewert mit echo und einer Kommando-
Substitution 347
6.4.3 Rückgabewert ohne eine echte Rückgabe (lokale
Variable) 349
6.4.4 Funktionen und exit 350
6.5 Lokale contra globale Variablen 351
6.5.1 Lokale Variablen (Bash und Korn-Shell only) 353
6.6 alias und unalias 355
6.7 Autoload (Korn-Shell only) 357
7.1 Grundlagen zu den Signalen 359
7.2 Signale senden - kill 363
7.3 Eine Fallgrube für Signale - trap 364
7.3.1 Einen Signalhandler (Funktion) einrichten 367
7.3.2 Mit Signalen Schleifendurchläufe abbrechen 370
7.3.3 Mit Signalen das Script beenden 371
7.3.4 Das Beenden der Shell (oder eines Scripts) abfangen 371
7.3.5 Signale ignorieren 373
7.3.6 Signale zurücksetzen 373
8.1 Prozessprioritäten 375
8.2 Warten auf andere Prozesse 376
8.3 Hintergrundprozess wieder hervorholen 377
8.4 Hintergrundprozess schützen 378
8.5 Subshells 379
8.6 Mehrere Scripts verbinden und ausführen (Kommunikation
zwischen Scripts) 381
8.6.1 Datenübergabe zwischen Scripts 381
8.6.2 Rückgabe von Daten an andere Scripts 383
8.6.3 Scripts synchronisieren 386
8.7 Jobverwaltung 388
8.8 Shellscripts zeitgesteuert ausführen 391
8.9 Startprozess-und Profildaten der Shell 396
8.9.1 Arten von Initialisierungsdateien 397
8.9.2 Ausführen von Profildateien beim Start einer
Login-Shell 398
8.9.3 Ausführen von Profildateien beim Start einer
Nicht-Login-Shell (Bash und Korn-Shell) 400
8.9.4 Zusammenfassung alle Profil- und Startup-Dateien 402
8.10 Ein Shellscript bei der Ausführung 404
8.10.1 Syntaxüberprüfung 404
8.10.2 Expansionen 404
8.10.3 Kommandos 404
8.11 Shellscripts optimieren 406
9.1 Der Befehl eval 409
9.2 xargs 412
9.3 dimame und basename 414
9.4 umask 415
9.5 ulimit (Builtin) 416
9.6 time 418
9.7 typeset 419
10.1 Strategien zum Vermeiden von Fehlern 421
10.1.1 Planen Sie Ihr Script 421
10.1.2 Testsystem bereitstellen 422
10.1.3 Ordnung ist das halbe Leben 423
10.2 Fehlerarten 425
10.3 Fehlersuche 426
10.3.1 Tracen mit set-x 427
10.3.2 DEBUG und ERR-Signal 429
10.3.3 Variablen und Syntax überprüfen 434
10.3.4 Eine Debug-Ausgabe hinzufügen 434
10.3.5 Debugging-Tools 435
11.1 Reguläre Ausdrücke - die Theorie 437
11.1.1 Elemente für reguläre Ausdrücke (POSIX-RE) 438
11.2 grep 441
11.2.1 Wie arbeitet grep? 442
11.2.2 grep mit regulären Ausdrücken 443
11.2.3 grep mit Pipes 448
11.2.4 grep mit Optionen 449
11.2.5 egrep (extended grep) 452
11.2.6 fgrep (fixed oder fast grep) 453
11.2.7 rgrep 453
12.1 Funktions-und Anwendungsweise von sed 455
12.1.1 Wohin mit der Ausgabe? 457
12.2 Der sed-Befehl 459
12.3 Adressen 460
12.4 Kommandos, Substitutionsflags und Optionen von sed 462
12.4.1 Das a-Kommando - Zeile(n) anfügen 465
12.4.2 Das c-Kommando - Zeilen ersetzen 466
12.4.3 Das d-Kommando- Zeilen löschen 467
12.4.4 Die Kommandos h, H, g, G und x - Arbeiten mit
den Puffern 467
12.4.5 Das Kommando i - Einfügen von Zeilen 469
12.4.6 Das p-Kommando - Patternspace ausgeben 470
12.4.7 Das Kommando q - Beenden 471
12.4.8 Die Kommandos r und w 471
12.4.9 Das Kommando s - substitute 473
12.4.10 Das Kommando y 477
12.5 sed-Scripts 478
13.1 Einführung und Grundlagen von awk 483
13.1.1 History und Versionen von awk 484
13.1.2 Die Funktionsweise von awk 485
13.2 Aufruf von awk-Programmen 486
13.2.1 Grundlegender Aufbau eines awk-Kommandos 486
13.2.2 Die Kommandozeilen-Optionen von awk 488
13.2.3 awk aus der Kommandozeile aufrufen 489
13.2.4 awk in Shellscripts aufrufen 489
13.2.5 awk als eigenes Script ausführen 491
13.3 Grundlegende awk-Programme und-Elemente 491
13.3.1 Ausgabe von Zeilen und Zeilennummern 492
13.3.2 Felder 493
13.4 Muster (bzw. Adressen) von awk-Scripts 498
13.4.1 Zeichenkettenvergleiche 498
13.4.2 Vergleichsausdrücke 499
13.4.3 Reguläre Ausdrücke 501
13.4.4 Zusammengesetzte Ausdrücke 504
13.4.5 BEGIN und END 504
13.5 Die Komponenten von awk-Scripts 506
13.5.1 Variablen 507
13.5.2 Arrays 512
13.5.3 Operatoren 515
13.5.4 Kontrollstrukturen 522
13.6 Funktionen 527
13.6.1 Mathematische Funktionen 527
13.6.2 Funktionen für Zeichenketten 529
13.6.3 Funktionen für die Zeit 533
13.6.4 Systemfunktionen 535
13.6.5 Ausgabefunktionen 535
13.6.6 Eingabefunktion 536
13.6.7 Benutzerdefinierte Funktionen 539
13.7 Empfehlung 542
14.1 Kurzübersicht 544
14.2 Dateiorientierte Kommandos 551
bzcat - Ausgabe von bzip2-komprimierten Dateien 551
cat - Datei(en) nacheinander ausgeben 551
chgrp - Gruppe von Dateien oder Verzeichnissen ändern 552
cksum/md5sum/sum - eine Prüfsumme für eine Datei
ermitteln 552
chmod - Zugriffsrechte von Dateien oder Verzeichnissen
ändern 553
chown - Eigentümer von Dateien oder Verzeichnissen ändern 554
cmp - Dateien miteinander vergleichen 555
comm - zwei sortierte Textdateien miteinander vergleichen 555
cp-Dateien kopieren 556
csplit - Zerteilen von Dateien (kontextabhängig) 556
cut-Zeichen oder Felder aus Dateien herausschneiden 557
diff - Vergleichen zweier Dateien 557
diff3 - Vergleich von drei Dateien 558
dos2unix - Dateien vom DOS- in UNIX-Format umwandeln 559
expand - Tabulatoren in Leerzeichen umwandeln 559
file-den Inhalt von Dateien analysieren 559
find-Suchen nach Dateien 560
fold - einfaches Formatieren von Dateien 561
head - Anfang einer Datei ausgeben 562
less - Datei(en) seitenweise ausgeben 562
In - Links auf eine Datei erzeugen 563
Is - Verzeichnisinhalt auflisten 563
more - Datei(en) seitenweise ausgeben 564
mv- Datei(en) und Verzeichnisse verschieben oder
umbenennen 564
nl - Datei mit Zeilennummer ausgeben 564
od - Datei(en) hexadezimal bzw. oktal ausgeben 565
paste- Dateien spaltenweise verknüpfen 565
pcat - Ausgabe von pack-komprimierten Dateien 565
rm - Dateien und Verzeichnisse löschen 566
sort- Dateien sortieren 566
split - Dateien in mehrere Teile zerlegen 567
tac-Dateien rückwärts ausgeben 568
tail - Ende einer Datei ausgeben 568
tee-Ausgabe duplizieren 569
touch - Anlegen von Dateien oder Zeitstempel verändern 569
tr-Zeichen ersetzen bzw. Umformen von Dateien 569
type- Kommandos klassifizieren 569
umask- Dateierstellungsmaske ändern bzw. ausgeben 570
uniq - doppelte Zeilen nur einmal ausgeben 570
unix2dos - Dateien vom UNIX- in DOS-Format umwandeln 570
wc - Zeilen, Wörter und Zeichen einer Datei zählen 571
whereis - Suche nach Dateien 571
zcat, zless, zmore - (seitenweise) Ausgabe von
gunzip-komprimierten Dateien 571
14.3 Verzeichnisorientierte Kommandos 572
basename-gibt den Dateianteil eines Pfadnamens zurück 572
cd -Verzeichnis wechseln 572
dircmp-Verzeichnisse rekursiv vergleichen 572
dirname-Verzeichnisanteil eines Pfadnamens zurückgeben 572
mkdir- ein Verzeichnis anlegen 572
pwd-Ausgeben des aktuellen Arbeitsverzeichnisses 573
rmdir- ein leeres Verzeichnis löschen 573
14.4 Verwaltung von Benutzern und Gruppe 573
exit, logout-eine Session (Sitzung) beenden 573
finger- Informationen zu anderen Benutzern abfragen 574
groupadd, groupmod, groupdel - Gruppenverwaltung
(distributionsabhängig) 574
groups - Gruppenzugehörigkeit ausgeben 575
id - eigene Benutzer- und Gruppen-ID ermitteln 575
last - An- und Abmeldezeit eines Benutzers ermitteln 575
logname - Name des aktuellen Benutzers anzeigen 575
newgrp - Gruppenzugehörigkeit kurzzeitig wechseln
(betriebssystemspezifisch) 575
passwd - Passwort ändern bzw. vergeben 576
useradd/adduser, userdel, usermod - Benutzerverwaltung
(distributionsabhängig) 576
who - eingeloggte Benutzer anzeigen 577
whoami - Name des aktuellen Benutzers anzeigen 577
14.5 Programm- und Prozessverwaltung 578
at- Kommando zu einem bestimmten Zeitpunkt ausführen
lassen 578
baten - Kommando irgendwann später ausführen lassen 578
bg - einen angehaltenen Prozess im Hintergrund fortsetzen 579
cron/crontab - Programme in bestimmten Zeitintervallen
ausführen lassen 579
fg-einen angehaltenen Prozess im Vordergrund fortsetzen 579
Jobs - Anzeigen angehaltener bzw. im Hintergrund
laufender Prozesse 580
kill - Signale an Prozesse mit einer Prozessnummer senden 580
killall - Signale an Prozesse mit einem Prozessnamen senden 580
nice - Prozesse mit anderer Priorität ausführen lassen 580
nohup - Prozesse beim Beenden einer Sitzung weiterlaufen
lassen 581
ps - Prozessinformationen anzeigen 581
pgrep - Prozesse über ihren Namen finden 582
pstree-Prozesshierachie in Baumform ausgeben 582
renice - Priorität laufender Prozesse verändern 583
sleep - Prozesse suspendieren (schlafen legen) 583
su-Ändern der Benutzerkennung (ohne Neuanmeldung) 583
sudo - Programm als anderer Benutzer ausführen 584
time - Zeitmessung für Prozesse 585
top - Prozesse nach CPU-Auslastung anzeigen
(betriebssystemspezifisch) 585
14.6 Speicherplatzinformationen 585
df - Abfrage des benötigten Speicherplatzes für die
Dateisysteme 585
du - Größe eines Verzeichnisbaums ermitteln 586
free - verfügbaren Speicherplatz (RAM und Swap) anzeigen
(betriebssystemabhängig) 587
swap - Swap-Space anzeigen (nicht Linux) 587
14.7 Dateisystem-Kommandos 587
badblocks - überprüft, ob ein Datenträger defekte
Sektoren hat 587
cfdisk - Partitionieren von Festplatten 588
dd - Datenblöcke zwischen Device (Low Level) kopieren
(und konvertieren) 588
dd_rescue - fehlertolerantes Kopieren von Dateibtöcken 590
dumpe2fs - zeigt Informationen über ein ext2/ext3-
Dateisystem an 591
e2fsck - repariert ein ext2/ext3-Dateisystem 591
fdformat-formatiert eine Diskette 592
fdisk- Partitionieren von Speichermedien 593
fsck- Reparieren und Überprüfen von Dateisystemen 594
mkfs - Dateisystem einrichten 595
mkswap - eine Swap-Partition einrichten 596
mount, umount-An- bzw. Abhängen eines Dateisystems 597
parted - Partitionen anlegen, verschieben, vergrößern oder
verkleinern 598
prtvtoc - Partitionstabellen ausgeben 598
swapon, swapoff - Swap-Datei oder Partition (de)aktivieren 598
sync - alle gepufferten Schreiboperationen ausführen 598
14.8 Archivierung und Backup 599
bzip2/bunzip2 - (De-)Komprimieren von Dateien 599
compress/uncompress - (De-)Komprimieren von Dateien 600
cpio, afio - Dateien und Verzeichnisse archivieren 600
crypt - Dateien verschlüsseln 603
dump/restore bzw. ufsdump/ufsrestore - Vollsicherung bzw.
Wiederherstellen eines Dateisystems 603
gzip/gunzip - (De-)Komprimieren von Dateien 606
mt - Streamer steuern 607
pack/unpack-(De-)Komprimieren von Dateien 607
tar-Dateien und Verzeichnisse archivieren 608
zip/unzip - (De-)Komprimieren von Dateien 612
Übersicht zu Dateiendungen und den Pack-Programmen 613
14.9 Systeminformationen 613
cal - zeigt einen Kalender an 613
date- Datum und Uhrzeit 614
uname - Rechnername, Architektur und OS ausgeben 614
uptime - Laufzeit des Rechners 615
14.10 System-Kommandos 615
dmesg - letzte Boot-Meldung des Kernels anzeigen 615
halt-alle laufenden Prozesse beenden 615
reboot - alle laufenden Prozesse beenden und System
neu starten 615
shutdown - System herunterfahren 616
14.11 Druckeradministration 617
14.12 Netzwerkbefehle 618
arp -Ausgeben von MAC-Adressen 618
ftp - Dateien zu einem anderen Rechner übertragen 618
hostname - Rechnername ermitteln 624
ifconfig - Netzwerkzugang konfigurieren 624
mail/mailx - E-Mails schreiben und empfangen (und
auswerten) 626
uuencode/uudecode - Text-bzw. Binärdateien codieren 627
netstat - Statusinformationen über das Netzwerk 628
nslookup (host/dig) - DNS-Server abfragen 628
ping-Verbindung zu anderem Rechner testen 629
Die r-Kommandos von Berkeley (rcp, rlogin, rsh, rwho) 630
ssh-sichere Shell auf anderem Rechner starten 630
scp- Dateien kopieren zwischen unterschiedlichen Rechnern 632
rsync- Replizieren von Dateien und Verzeichnissen 633
traceroute- Route zu einem Rechner verfolgen 635
14.13 Benutzerkommunikation 636
wall - Nachrichten an alle Benutzer verschicken 636
write- Nachrichten an andere Benutzer verschicken 636
mesg- Nachrichten auf die Dialogstation zulassen oder
unterbinden 636
14.14 Bildschirm-und Terminalkommandos 637
clear- Löschen des Bildschirms 637
reset - Zeichensatz für ein Terminal wiederherstellen 637
setterm - Terminal-Einstellung verändern 637
stty-Terminal-Einstellung abfragen oder setzen 638
tty - Terminal-Name erfragen 639
tput-Terminal- und Cursorsteuerung 639
14.15 Online-Hilfen 640
apropos - nach Schlüsselwörtern in man-Seiten suchen 640
info - GNU-Online-Manual 640
man - die traditionelle Online-Hilfe 640
whatis - Kurzbeschreibung zu einem Kommando 641
14.16 Alles rund um PostScript-Kommandos 642
14.17 Gemischte Kommandos 642
alias/unalias - Kurznamen für Kommandos vergeben bzw.
löschen 642
bc - Taschenrechner 642
printenv bzw. env - Umgebungsvariablen anzeigen 643
15.1 Alltägliche Lösungen 646
15.1.1 Auf alphabetische und numerische Zeichen prüfen 646
15.1.2 Auf Integer überprüfen 647
15.1.3 echo mit oder ohne-n 649
15.2 Datei-Utilities 650
15.2.1 Leerzeichen im Dateinamen ersetzen 650
15.2.2 Dateiendungen verändern 651
15.2.3 Nach veränderten Dateien in zwei Verzeichnissen
vergleichen 653
15.3 Systemadministration 654
15.3.1 Benutzerverwaltung 655
15.3.2 Systemüberwachung 673
15.4 Backup-Strategien 679
15.4.1 Warum ein Backup? 679
15.4.2 Sicherungsmedien 681
15.4.3 Varianten der Sicherungen 681
15.4.4 Bestimmte Bereiche sichern 682
15.4.5 Backup über ssh mittar 683
15.4.6 Daten mit rsync synchronisieren 689
15.4.7 Dateien und Verzeichnisse per E-Mail versenden 693
15.4.8 Startup-Scripts 695
15.5 World Wide Web und HTML 702
15.5.1 Analysieren von accessjog (Apache) 703
15.5.2 Analysieren von errorjog (Apache) 707
15.6 CGI (Common Gateway Interface) 710
15.6.1 CGI-Scripts ausführen 711
15.6.2 CGI-Environment ausgeben 712
15.6.3 Einfache Ausgabe als Text 713
15.6.4 Ausgabe als HTML formatieren 716
15.6.5 Systeminformationen ausgeben 718
15.6.6 Kontaktformular 720
15.6.7 Noch ein Tipp 724
16.1 Was ist und was kann Tcl/Tk? 725
16.2 Ein Tcl/Tk-Skript starten 726
16.3 Variablen 728
16.4 Einfache Ausgabe 729
16.5 Substitutionsmechanismen 729
16.5.1 Variablensubstitution 729
16.5.2 Befehlssubstitution 730
16.5.3 Backslashsubstitution 730
16.6 Mathematische Ausdrücke 731
16.7 Programmstrukturen 731
16.7.1 Verzweigungen 732
16.7.2 Schleifen 733
16.7.3 Prozeduren (Funktionen) 735
16.8 Listen 736
16.9 Stringverarbeitung 736
16.10 Dateizugriff 736
16.10.1 open 737
16.10.2 puts 737
16.10.3 gets 738
16.10.4 read 739
16.11 Der Rest 739
16.12 Das Tk-Toolkit 739
16.13 Eine Einführung 740
16.14 Eine einfache Schaltfläche - button 741
16.15 Einzeiliges Textfeld - entry 742
16.16 AAehrzeiliger Text und ein Menü - text und menu 743
16.17 Mit Ereignissen verbinden - bind 747
16.18 Layoutmanager (Geometriemanager) -grid und pack 749
16.18.1 pack 749
16.18.2 grid 752
16.19 Eine Scrollleiste - scrollbar 754
16.20 Weitere Eingabe-Widgets - radiobutton, checkbutton, scale und
spinbox 755
16.20.1 radiobutton 755
16.20.2 checkbutton 756
16.20.3 scale 756
16.20.4 spinbox 757
16.20.5 Beispiel 758
16.21 frame und labelframe 760
16.22 Listen - listbox 760
16.23 Darstellen von Grafiken - canvas 762
16.24 Ein geteiltes Fenster-panedwindow 763
16.25 Widgetübersicht 764
16.26 Dialoge (tkj 765
16.27 Tile-Erweiterung (ttkj 765
16.28 Weitere Empfehlungen 766
A.1 Shell-Builtin-Befehle 769
A.2 Externe Kommandos 771
A.3 Shell-Optionen 772
A.4 Shell-Variablen 773
A.5 Kommandozeile editieren 778
A.6 Wichtige Tastenkürzel (Kontrolltasten) 780
A.7 Initialisierungsdateien der Shells 781
A.8 Signale 782
A.9 Sonderzeichen und Zeichenklassen 784
A.10 Die Buch-DVD 785
Index 787 |
any_adam_object | 1 |
any_adam_object_boolean | 1 |
author | Wolf, Jürgen 1974- |
author_GND | (DE-588)132691256 |
author_facet | Wolf, Jürgen 1974- |
author_role | aut |
author_sort | Wolf, Jürgen 1974- |
author_variant | j w jw |
building | Verbundindex |
bvnumber | BV023275139 |
classification_rvk | ST 250 ST 261 |
ctrlnum | (OCoLC)199290405 (DE-599)BVBBV023275139 |
dewey-full | 004 005.133 |
dewey-hundreds | 000 - Computer science, information, general works |
dewey-ones | 004 - Computer science 005 - Computer programming, programs, data, security |
dewey-raw | 004 005.133 |
dewey-search | 004 005.133 |
dewey-sort | 14 |
dewey-tens | 000 - Computer science, information, general works |
discipline | Informatik |
discipline_str_mv | Informatik |
edition | 2., aktualisierte Aufl. |
format | Book |
fullrecord | <?xml version="1.0" encoding="UTF-8"?><collection xmlns="http://www.loc.gov/MARC21/slim"><record><leader>00000nam a2200000 c 4500</leader><controlfield tag="001">BV023275139</controlfield><controlfield tag="003">DE-604</controlfield><controlfield tag="005">20100812</controlfield><controlfield tag="007">t</controlfield><controlfield tag="008">080424s2008 ad|| |||| 00||| ger d</controlfield><datafield tag="016" ind1="7" ind2=" "><subfield code="a">985978783</subfield><subfield code="2">DE-101</subfield></datafield><datafield tag="020" ind1=" " ind2=" "><subfield code="a">9783836211574</subfield><subfield code="c">Pp. : EUR 39.90 (DE), EUR 41.10 (AT), sfr 67.90</subfield><subfield code="9">978-3-8362-1157-4</subfield></datafield><datafield tag="020" ind1=" " ind2=" "><subfield code="a">3836211572</subfield><subfield code="c">Pp. : EUR 39.90 (DE), EUR 41.10 (AT), sfr 67.90</subfield><subfield code="9">3-8362-1157-2</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(OCoLC)199290405</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(DE-599)BVBBV023275139</subfield></datafield><datafield tag="040" ind1=" " ind2=" "><subfield code="a">DE-604</subfield><subfield code="b">ger</subfield><subfield code="e">rakddb</subfield></datafield><datafield tag="041" ind1="0" ind2=" "><subfield code="a">ger</subfield></datafield><datafield tag="049" ind1=" " ind2=" "><subfield code="a">DE-703</subfield><subfield code="a">DE-863</subfield><subfield code="a">DE-860</subfield><subfield code="a">DE-1051</subfield><subfield code="a">DE-20</subfield><subfield code="a">DE-861</subfield><subfield code="a">DE-523</subfield><subfield code="a">DE-634</subfield><subfield code="a">DE-1047</subfield><subfield code="a">DE-83</subfield><subfield code="a">DE-11</subfield></datafield><datafield tag="082" ind1="0" ind2=" "><subfield code="a">004</subfield></datafield><datafield tag="082" ind1="0" ind2=" "><subfield code="a">005.133</subfield><subfield code="2">22/ger</subfield></datafield><datafield tag="084" ind1=" " ind2=" "><subfield code="a">ST 250</subfield><subfield code="0">(DE-625)143626:</subfield><subfield code="2">rvk</subfield></datafield><datafield tag="084" ind1=" " ind2=" "><subfield code="a">ST 261</subfield><subfield code="0">(DE-625)143633:</subfield><subfield code="2">rvk</subfield></datafield><datafield tag="084" ind1=" " ind2=" "><subfield code="a">004</subfield><subfield code="2">sdnb</subfield></datafield><datafield tag="100" ind1="1" ind2=" "><subfield code="a">Wolf, Jürgen</subfield><subfield code="d">1974-</subfield><subfield code="e">Verfasser</subfield><subfield code="0">(DE-588)132691256</subfield><subfield code="4">aut</subfield></datafield><datafield tag="245" ind1="1" ind2="0"><subfield code="a">Shell-Programmierung</subfield><subfield code="b">das umfassende Handbuch ; [Einführung, Praxis, Referenz ; Bourne-, Korn- und Bourne-Again-Shell (Bash) ; inkl. grep, sed und awk, GUIs mit Tcl/Tk ; DVD-ROM Openbooks zu Linux und C, Video-Lektionen (2:00 Std.) zu Ubuntu, alle Beispiele des Buches]</subfield><subfield code="c">Jürgen Wolf</subfield></datafield><datafield tag="250" ind1=" " ind2=" "><subfield code="a">2., aktualisierte Aufl.</subfield></datafield><datafield tag="264" ind1=" " ind2="1"><subfield code="a">Bonn</subfield><subfield code="b">Galileo Press</subfield><subfield code="c">2008</subfield></datafield><datafield tag="300" ind1=" " ind2=" "><subfield code="a">804 S.</subfield><subfield code="b">Ill., graph. Darst.</subfield><subfield code="e">1 DVD-ROM (12 cm)</subfield></datafield><datafield tag="336" ind1=" " ind2=" "><subfield code="b">txt</subfield><subfield code="2">rdacontent</subfield></datafield><datafield tag="337" ind1=" " ind2=" "><subfield code="b">n</subfield><subfield code="2">rdamedia</subfield></datafield><datafield tag="338" ind1=" " ind2=" "><subfield code="b">nc</subfield><subfield code="2">rdacarrier</subfield></datafield><datafield tag="490" ind1="0" ind2=" "><subfield code="a">Galileo computing</subfield></datafield><datafield tag="650" ind1="0" ind2="7"><subfield code="a">UNIX</subfield><subfield code="0">(DE-588)4061835-3</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="650" ind1="0" ind2="7"><subfield code="a">LINUX</subfield><subfield code="0">(DE-588)4337730-0</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="650" ind1="0" ind2="7"><subfield code="a">Befehlsvorrat</subfield><subfield code="0">(DE-588)4129931-0</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="650" ind1="0" ind2="7"><subfield code="a">CD-ROM</subfield><subfield code="0">(DE-588)4139307-7</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="650" ind1="0" ind2="7"><subfield code="a">SHELL</subfield><subfield code="g">Programmiersprache</subfield><subfield code="0">(DE-588)4116486-6</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="655" ind1=" " ind2="7"><subfield code="0">(DE-588)4188171-0</subfield><subfield code="a">Verzeichnis</subfield><subfield code="2">gnd-content</subfield></datafield><datafield tag="689" ind1="0" ind2="0"><subfield code="a">LINUX</subfield><subfield code="0">(DE-588)4337730-0</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="0" ind2="1"><subfield code="a">SHELL</subfield><subfield code="g">Programmiersprache</subfield><subfield code="0">(DE-588)4116486-6</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="0" ind2=" "><subfield code="5">DE-604</subfield></datafield><datafield tag="689" ind1="1" ind2="0"><subfield code="a">UNIX</subfield><subfield code="0">(DE-588)4061835-3</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="1" ind2="1"><subfield code="a">SHELL</subfield><subfield code="g">Programmiersprache</subfield><subfield code="0">(DE-588)4116486-6</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="1" ind2=" "><subfield code="5">DE-604</subfield></datafield><datafield tag="689" ind1="2" ind2="0"><subfield code="a">SHELL</subfield><subfield code="g">Programmiersprache</subfield><subfield code="0">(DE-588)4116486-6</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="2" ind2="1"><subfield code="a">Befehlsvorrat</subfield><subfield code="0">(DE-588)4129931-0</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="2" ind2="2"><subfield code="a">CD-ROM</subfield><subfield code="0">(DE-588)4139307-7</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="2" ind2=" "><subfield code="8">1\p</subfield><subfield code="5">DE-604</subfield></datafield><datafield tag="856" ind1="4" ind2="2"><subfield code="q">text/html</subfield><subfield code="u">http://deposit.dnb.de/cgi-bin/dokserv?id=3013198&prov=M&dok_var=1&dok_ext=htm</subfield><subfield code="3">Inhaltstext</subfield></datafield><datafield tag="856" ind1="4" ind2="2"><subfield code="q">text/html</subfield><subfield code="u">http://www.galileocomputing.de/katalog/buecher/titel/gp/titelID-1712?GalileoSession=55155900A3-KHz-ZN7s</subfield><subfield code="3">Ausführliche Beschreibung</subfield></datafield><datafield tag="856" ind1="4" ind2="2"><subfield code="m">HBZ Datenaustausch</subfield><subfield code="q">application/pdf</subfield><subfield code="u">http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=016460052&sequence=000002&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA</subfield><subfield code="3">Inhaltsverzeichnis</subfield></datafield><datafield tag="883" ind1="1" ind2=" "><subfield code="8">1\p</subfield><subfield code="a">cgwrk</subfield><subfield code="d">20201028</subfield><subfield code="q">DE-101</subfield><subfield code="u">https://d-nb.info/provenance/plan#cgwrk</subfield></datafield><datafield tag="943" ind1="1" ind2=" "><subfield code="a">oai:aleph.bib-bvb.de:BVB01-016460052</subfield></datafield></record></collection> |
genre | (DE-588)4188171-0 Verzeichnis gnd-content |
genre_facet | Verzeichnis |
id | DE-604.BV023275139 |
illustrated | Illustrated |
index_date | 2024-07-02T20:37:36Z |
indexdate | 2024-08-31T00:20:27Z |
institution | BVB |
isbn | 9783836211574 3836211572 |
language | German |
oai_aleph_id | oai:aleph.bib-bvb.de:BVB01-016460052 |
oclc_num | 199290405 |
open_access_boolean | |
owner | DE-703 DE-863 DE-BY-FWS DE-860 DE-1051 DE-20 DE-861 DE-523 DE-634 DE-1047 DE-83 DE-11 |
owner_facet | DE-703 DE-863 DE-BY-FWS DE-860 DE-1051 DE-20 DE-861 DE-523 DE-634 DE-1047 DE-83 DE-11 |
physical | 804 S. Ill., graph. Darst. 1 DVD-ROM (12 cm) |
publishDate | 2008 |
publishDateSearch | 2008 |
publishDateSort | 2008 |
publisher | Galileo Press |
record_format | marc |
series2 | Galileo computing |
spelling | Wolf, Jürgen 1974- Verfasser (DE-588)132691256 aut Shell-Programmierung das umfassende Handbuch ; [Einführung, Praxis, Referenz ; Bourne-, Korn- und Bourne-Again-Shell (Bash) ; inkl. grep, sed und awk, GUIs mit Tcl/Tk ; DVD-ROM Openbooks zu Linux und C, Video-Lektionen (2:00 Std.) zu Ubuntu, alle Beispiele des Buches] Jürgen Wolf 2., aktualisierte Aufl. Bonn Galileo Press 2008 804 S. Ill., graph. Darst. 1 DVD-ROM (12 cm) txt rdacontent n rdamedia nc rdacarrier Galileo computing UNIX (DE-588)4061835-3 gnd rswk-swf LINUX (DE-588)4337730-0 gnd rswk-swf Befehlsvorrat (DE-588)4129931-0 gnd rswk-swf CD-ROM (DE-588)4139307-7 gnd rswk-swf SHELL Programmiersprache (DE-588)4116486-6 gnd rswk-swf (DE-588)4188171-0 Verzeichnis gnd-content LINUX (DE-588)4337730-0 s SHELL Programmiersprache (DE-588)4116486-6 s DE-604 UNIX (DE-588)4061835-3 s Befehlsvorrat (DE-588)4129931-0 s CD-ROM (DE-588)4139307-7 s 1\p DE-604 text/html http://deposit.dnb.de/cgi-bin/dokserv?id=3013198&prov=M&dok_var=1&dok_ext=htm Inhaltstext text/html http://www.galileocomputing.de/katalog/buecher/titel/gp/titelID-1712?GalileoSession=55155900A3-KHz-ZN7s Ausführliche Beschreibung HBZ Datenaustausch application/pdf http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=016460052&sequence=000002&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA Inhaltsverzeichnis 1\p cgwrk 20201028 DE-101 https://d-nb.info/provenance/plan#cgwrk |
spellingShingle | Wolf, Jürgen 1974- Shell-Programmierung das umfassende Handbuch ; [Einführung, Praxis, Referenz ; Bourne-, Korn- und Bourne-Again-Shell (Bash) ; inkl. grep, sed und awk, GUIs mit Tcl/Tk ; DVD-ROM Openbooks zu Linux und C, Video-Lektionen (2:00 Std.) zu Ubuntu, alle Beispiele des Buches] UNIX (DE-588)4061835-3 gnd LINUX (DE-588)4337730-0 gnd Befehlsvorrat (DE-588)4129931-0 gnd CD-ROM (DE-588)4139307-7 gnd SHELL Programmiersprache (DE-588)4116486-6 gnd |
subject_GND | (DE-588)4061835-3 (DE-588)4337730-0 (DE-588)4129931-0 (DE-588)4139307-7 (DE-588)4116486-6 (DE-588)4188171-0 |
title | Shell-Programmierung das umfassende Handbuch ; [Einführung, Praxis, Referenz ; Bourne-, Korn- und Bourne-Again-Shell (Bash) ; inkl. grep, sed und awk, GUIs mit Tcl/Tk ; DVD-ROM Openbooks zu Linux und C, Video-Lektionen (2:00 Std.) zu Ubuntu, alle Beispiele des Buches] |
title_auth | Shell-Programmierung das umfassende Handbuch ; [Einführung, Praxis, Referenz ; Bourne-, Korn- und Bourne-Again-Shell (Bash) ; inkl. grep, sed und awk, GUIs mit Tcl/Tk ; DVD-ROM Openbooks zu Linux und C, Video-Lektionen (2:00 Std.) zu Ubuntu, alle Beispiele des Buches] |
title_exact_search | Shell-Programmierung das umfassende Handbuch ; [Einführung, Praxis, Referenz ; Bourne-, Korn- und Bourne-Again-Shell (Bash) ; inkl. grep, sed und awk, GUIs mit Tcl/Tk ; DVD-ROM Openbooks zu Linux und C, Video-Lektionen (2:00 Std.) zu Ubuntu, alle Beispiele des Buches] |
title_exact_search_txtP | Shell-Programmierung das umfassende Handbuch ; [Einführung, Praxis, Referenz ; Bourne-, Korn- und Bourne-Again-Shell (Bash) ; inkl. grep, sed und awk, GUIs mit Tcl/Tk ; DVD-ROM Openbooks zu Linux und C, Video-Lektionen (2:00 Std.) zu Ubuntu, alle Beispiele des Buches] |
title_full | Shell-Programmierung das umfassende Handbuch ; [Einführung, Praxis, Referenz ; Bourne-, Korn- und Bourne-Again-Shell (Bash) ; inkl. grep, sed und awk, GUIs mit Tcl/Tk ; DVD-ROM Openbooks zu Linux und C, Video-Lektionen (2:00 Std.) zu Ubuntu, alle Beispiele des Buches] Jürgen Wolf |
title_fullStr | Shell-Programmierung das umfassende Handbuch ; [Einführung, Praxis, Referenz ; Bourne-, Korn- und Bourne-Again-Shell (Bash) ; inkl. grep, sed und awk, GUIs mit Tcl/Tk ; DVD-ROM Openbooks zu Linux und C, Video-Lektionen (2:00 Std.) zu Ubuntu, alle Beispiele des Buches] Jürgen Wolf |
title_full_unstemmed | Shell-Programmierung das umfassende Handbuch ; [Einführung, Praxis, Referenz ; Bourne-, Korn- und Bourne-Again-Shell (Bash) ; inkl. grep, sed und awk, GUIs mit Tcl/Tk ; DVD-ROM Openbooks zu Linux und C, Video-Lektionen (2:00 Std.) zu Ubuntu, alle Beispiele des Buches] Jürgen Wolf |
title_short | Shell-Programmierung |
title_sort | shell programmierung das umfassende handbuch einfuhrung praxis referenz bourne korn und bourne again shell bash inkl grep sed und awk guis mit tcl tk dvd rom openbooks zu linux und c video lektionen 2 00 std zu ubuntu alle beispiele des buches |
title_sub | das umfassende Handbuch ; [Einführung, Praxis, Referenz ; Bourne-, Korn- und Bourne-Again-Shell (Bash) ; inkl. grep, sed und awk, GUIs mit Tcl/Tk ; DVD-ROM Openbooks zu Linux und C, Video-Lektionen (2:00 Std.) zu Ubuntu, alle Beispiele des Buches] |
topic | UNIX (DE-588)4061835-3 gnd LINUX (DE-588)4337730-0 gnd Befehlsvorrat (DE-588)4129931-0 gnd CD-ROM (DE-588)4139307-7 gnd SHELL Programmiersprache (DE-588)4116486-6 gnd |
topic_facet | UNIX LINUX Befehlsvorrat CD-ROM SHELL Programmiersprache Verzeichnis |
url | http://deposit.dnb.de/cgi-bin/dokserv?id=3013198&prov=M&dok_var=1&dok_ext=htm http://www.galileocomputing.de/katalog/buecher/titel/gp/titelID-1712?GalileoSession=55155900A3-KHz-ZN7s http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=016460052&sequence=000002&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA |
work_keys_str_mv | AT wolfjurgen shellprogrammierungdasumfassendehandbucheinfuhrungpraxisreferenzbournekornundbourneagainshellbashinklgrepsedundawkguismittcltkdvdromopenbookszulinuxundcvideolektionen200stdzuubuntuallebeispieledesbuches |
Beschreibung
THWS Würzburg Zentralbibliothek Lesesaal
Signatur: |
1000 ST 261 U61 W854(2)st |
---|---|
Exemplar 1 | ausleihbar Verfügbar Bestellen |