32
Betriebssysteme Dr. W. Jakob Studiengang Kartographie und Geomatik Unix.ppt 1 Unix Einführung, Historie Zugang, einige einfache Kommandos Umgang mit der Shell Unix-Filesystem Datei- und verzeichnisorientierte Kommandos Redirection, Pipes und Filter Editor pico Kommandos zur Prozessverwaltung Shell-Scripts Betriebssysteme Dr. W. Jakob Studiengang Kartographie und Geomatik Unix.ppt 2 Einführung, Historie Allgemeines: Multi-Tasking System Multi-User System Geräteunabhängiges hierarchisches Filesystem Hoher Portabilitätsgrad (90 - 95 % des Systems ist C-Code) Geeignet für die ganze Leistungsbandbreite: vom Handheld über PC und Großrechner bis hin zum Supercomputer Historisch bedingt kompakter Betriebssystemaufbau: Viele kleine Programme erfüllen eng abgegrenzte Aufgaben. (Small is beautiful) Kein Realzeitsystem. Es gibt aber realzeitfähige Versionen Hohe Verbreitung, z.B. im Server-Bereich

Unix - home.hs-karlsruhe.dejawi0001/BS-Vorlesung/K3_Unix_Handout_2FpS.pdf · 3 Betriebssysteme Dr. W. Jakob Studiengang Kartographie und Geomatik Unix.ppt 5 Zugang, einige einfache

Embed Size (px)

Citation preview

Page 1: Unix - home.hs-karlsruhe.dejawi0001/BS-Vorlesung/K3_Unix_Handout_2FpS.pdf · 3 Betriebssysteme Dr. W. Jakob Studiengang Kartographie und Geomatik Unix.ppt 5 Zugang, einige einfache

1

Betriebssysteme Dr. W. JakobStudiengang Kartographie und Geomatik Unix.ppt

1

UnixEinführung, HistorieZugang, einige einfache KommandosUmgang mit der ShellUnix-FilesystemDatei- und verzeichnisorientierte KommandosRedirection, Pipes und FilterEditor picoKommandos zur ProzessverwaltungShell-Scripts

Betriebssysteme Dr. W. JakobStudiengang Kartographie und Geomatik Unix.ppt

2

Einführung, Historie

Allgemeines:Multi-Tasking System

Multi-User System

Geräteunabhängiges hierarchisches Filesystem

Hoher Portabilitätsgrad (90 - 95 % des Systems ist C-Code)

Geeignet für die ganze Leistungsbandbreite: vom Handheld über PC und Großrechner bis hin zum Supercomputer

Historisch bedingt kompakter Betriebssystemaufbau: Viele kleine Programme erfüllen eng abgegrenzte Aufgaben. (Small is beautiful)

Kein Realzeitsystem. Es gibt aber realzeitfähige Versionen

Hohe Verbreitung, z.B. im Server-Bereich

Page 2: Unix - home.hs-karlsruhe.dejawi0001/BS-Vorlesung/K3_Unix_Handout_2FpS.pdf · 3 Betriebssysteme Dr. W. Jakob Studiengang Kartographie und Geomatik Unix.ppt 5 Zugang, einige einfache

2

Betriebssysteme Dr. W. JakobStudiengang Kartographie und Geomatik Unix.ppt

3

Einführung, Historie

Ursprung: Mitte der 60-iger Jahre, gemeinsames Projekt von AT&T, General Electric und dem MIT

Wichtige Randbedingungen:Erstellt von Softwareentwicklern und Systemprogrammierern

Unix ist ein System aus der Praxis für die Praxis.

Der Zeit entsprechende harte SpeicherplatzbeschränkungenTypische Hauptspeicher hatten seinerzeit 64 bis 128 kB!

Small is beautiful!

Die Entwickler benutzten Unix selbst.Was du nicht willst, das man dir tu’, das füg’ auch keinem anderen zu!

Viele kommerzielle und universitäre Varianten

Standard seit 1989: System V, Release 4

Es gibt viele Unix-Versionen mit Bezug auf den Standard: SunOS (Sun Workstation) Darwin (Mac OS X)Linux (PC) AIX (IBM)

. . .

Betriebssysteme Dr. W. JakobStudiengang Kartographie und Geomatik Unix.ppt

4

Zugang, einige einfache Kommandos

An- und Abmelden:mit Usernamen und Passwort

Anmeldung an den AIX-Server der FH:Mit den Windows-Zugangsdaten über sshunter MS Windows:

Nach erfolgreichem Einloggen erscheint das Prompt der Shell:$ _

Achtung:Unix ist case-sensitive.

Rechnername für den Externzugriff.

Intern genügt login.

Nach Eingabe des Benutzernamens

mit Connect verbinden. Nach erfolgreicher Verbindung einloggen.

Cursor(Eingabemarke)

Page 3: Unix - home.hs-karlsruhe.dejawi0001/BS-Vorlesung/K3_Unix_Handout_2FpS.pdf · 3 Betriebssysteme Dr. W. Jakob Studiengang Kartographie und Geomatik Unix.ppt 5 Zugang, einige einfache

3

Betriebssysteme Dr. W. JakobStudiengang Kartographie und Geomatik Unix.ppt

5

Zugang, einige einfache Kommandos

Die korn shell ist die Standard-Login-Shell des AIX-Servers.Wechsel zur Bourne Again Shell durch Eingabe von bash.

Es erscheint:bash-4.0$ _ oder auf anderen Rechnern nur bash$ _

Weitere Login-Möglichkeiten:Aus einer Shell heraus mit ssh oder su.

Remote-Login:ssh [<username>@]<hostname> oder ssh [–l <username>] <hostname>

Bei fehlendem Usernamen wird der aktuelle genommen. (secure shell)

Identitätswechsel:su [-] [<username>] (switch user)

Fehlender Username: Login als root (Administrator)Das – bewirkt einen Wechsel der Arbeitsumgebung

(z.B. Ausführung der Login-Scripte des neuen Benutzers).

Schalter eines Unix-Kommandos.

Hier mit Parameter

Betriebssysteme Dr. W. JakobStudiengang Kartographie und Geomatik Unix.ppt

6

Zugang, einige einfache Kommandos

Änderung des Passworts:passwd

Verlassen einer Shell:exit

Schließung der Login-Shell = Ausloggen

Datum und Uhrzeit:date

Angemeldete Benutzer:who

Die Variantewho am I

zeigt, als welcher Benutzer man im aktuellen Fenster angemeldet ist.(Das who–Kommando ist an der HS Ka aus Sicherheitsgründen deaktiviert)

Page 4: Unix - home.hs-karlsruhe.dejawi0001/BS-Vorlesung/K3_Unix_Handout_2FpS.pdf · 3 Betriebssysteme Dr. W. Jakob Studiengang Kartographie und Geomatik Unix.ppt 5 Zugang, einige einfache

4

Betriebssysteme Dr. W. JakobStudiengang Kartographie und Geomatik Unix.ppt

7

Zugang, einige einfache Kommandos

Online-Hilfe:man ([<knr>] <kommando> | -k <suchwort>)

Kapitelstruktur der Manpages (manual pages):1. Kommandos (einschl. BS-Kommandos)2. Systemaufrufe3. Bibliotheksaufrufe

…<knr>: Vorgabe der Kapitelnummer. Default: niedrigste KapitelnummerNeuere Versionen (z.B. Linux) zeigen die Alternativen.

Aufbau einer Hilfe-Seite:Purpose: Kurze Beschreibung des KommandosSyntax (BNF-angelehnt)Description: ausführliche Beschreibung einschließlich aller OptionenExamples (optional): einige BeispieleBugs (optional): Bekannte FehlerSee also: Querverweise

Betriebssysteme Dr. W. JakobStudiengang Kartographie und Geomatik Unix.ppt

8

Zugang, einige einfache Kommandos

Online-Hilfe (2):-k <suchwort>: Stichwortsuche über alle Kapitel. An der FH nicht verfügbar.

Beispiel:

Übungen:man clear Beispiel eines einfachen Kommandosman ls Beispiel eines umfangreicheren Kommandos

Page 5: Unix - home.hs-karlsruhe.dejawi0001/BS-Vorlesung/K3_Unix_Handout_2FpS.pdf · 3 Betriebssysteme Dr. W. Jakob Studiengang Kartographie und Geomatik Unix.ppt 5 Zugang, einige einfache

5

Betriebssysteme Dr. W. JakobStudiengang Kartographie und Geomatik Unix.ppt

9

Umgang mit der Shell

Umgang mit der ShellHistory, Command-Line-Editing, Completion, Programmabbruch

History:Speicherung aller Eingaben auch über eine Sitzung hinaus.

history!<nr> Wiederholung des Kommandos mit der Nummer <nr>!<bef_anf> Wiederholung des letzten mit <bef_anf> beginnenden Kommandos

Alternative Navigation in der History-Liste mit den Pfeiltasten:

Selektion und Ausführung eines Kommandos der Liste:

Betriebssysteme Dr. W. JakobStudiengang Kartographie und Geomatik Unix.ppt

10

Umgang mit der Shell

Command-Line-Editing:Funktion der bash und anderer Shells (nicht der korn-Shell !)

Einige Kommandos:Pfeiltasten: Verschieben des Cursors in der Befehlszeile Rückw Löschen nach linksBackspaceEntf Del Löschen des Zeichens unter dem CursorCtrl + a Sprung an den Anfang.Ctrl + e Sprung ans Ende.Ctrl + k Löschen ab Cursor bis Zeilenende. Ctrl + u Löschen der gesamten Befehlszeile.+ bedeutet gleichzeitiges Drücken: am Besten erst Ctrl und sofort danach den Buchstaben.

Übung:Editieren eines Kommandos aus der History und mit Return abschicken.

Page 6: Unix - home.hs-karlsruhe.dejawi0001/BS-Vorlesung/K3_Unix_Handout_2FpS.pdf · 3 Betriebssysteme Dr. W. Jakob Studiengang Kartographie und Geomatik Unix.ppt 5 Zugang, einige einfache

6

Betriebssysteme Dr. W. JakobStudiengang Kartographie und Geomatik Unix.ppt

11

Umgang mit der Shell

Completion:Vervollständigung der Eingabe durch die Tab-Taste:

VervollständigtBS-Kommandos (einschl. installierter Software)DateinamenPfadnamen

sofern der Anfang eindeutig ist.

Bietet beim zweiten Drücken die Alternativen an.

Resultat: Prüfung während der Eingabe !

Übung:1. Vervollständigung von his2. Vervollständigung von da

Betriebssysteme Dr. W. JakobStudiengang Kartographie und Geomatik Unix.ppt

12

Umgang mit der Shell

Programmabbruch:Wichtige Control-Sequenzen:Ctrl + c ProgrammabbruchCtrl + z Unterbrechung der ProgrammausführungCtrl + d Beendigung der Eingabe

Übung:1. Kommando wc Was passiert?

Abbruch mit Ctrl + c Ergebnis?

2. Kommando wcAbbruch mit Ctrl + d Ergebnis?

Page 7: Unix - home.hs-karlsruhe.dejawi0001/BS-Vorlesung/K3_Unix_Handout_2FpS.pdf · 3 Betriebssysteme Dr. W. Jakob Studiengang Kartographie und Geomatik Unix.ppt 5 Zugang, einige einfache

7

Betriebssysteme Dr. W. JakobStudiengang Kartographie und Geomatik Unix.ppt

13

Unix-Filesystem

Das Unix Filesystem

Vier unterschiedliche Dateiarten:1. Ordinary Files (Reguläre oder gewöhnliche Dateien):

Aus Benutzersicht die häufigste Dateiart Die Daten sind unstrukturiert. Ihre Interpretation hängt vom bearbeitenden Programm ab.Die Bedeutung von Dateierweiterungen ist reine Konvention.(Gilt so nicht für Desktops)

2. Directory (Dateiverzeichnis):Dienen der VerzeichnisverwaltungPro Verzeichnis zwei Dateien, bezeichnet mit . und ..

Betriebssysteme Dr. W. JakobStudiengang Kartographie und Geomatik Unix.ppt

14

Unix-Filesystem3. Special Files (spezielle Gerätedateien):

Repräsentieren die logische Beschreibung von physikalischen Geräten, wie z.B. Bildschirm, Festplatten, Drucker, usw. Befinden sich im Verzeichnis /dev

4. Named Pipes:Spezielle Pipes, hier nur der Vollständigkeit halber erwähnt.

Verzeichnisstruktur:Ein einheitlicher VerzeichnisbaumEin Hauptverzeichnis (root directory), dargestellt durch: /Weitere Standardverzeichnisse:

/user enthält die Home-Directories der Benutzer/dev Devicefiles/usr Systemsoftware, installierte SW, Libraries, Manuals, .../export für den Netzzugriff/etc Konfigurations- und Logindaten.

. . .

Page 8: Unix - home.hs-karlsruhe.dejawi0001/BS-Vorlesung/K3_Unix_Handout_2FpS.pdf · 3 Betriebssysteme Dr. W. Jakob Studiengang Kartographie und Geomatik Unix.ppt 5 Zugang, einige einfache

8

Betriebssysteme Dr. W. JakobStudiengang Kartographie und Geomatik Unix.ppt

15

Unix-Filesystem

Verzeichnisse eines Benutzers:Home-Directory pro Benutzer fest zugeordnetes Verzeichnis

Login-Directory Verzeichnis nach dem Einloggen. Häufig identisch mit dem Home-Verzeichnis

Working-Directory aktuelles VerzeichnisErfragbar mit: pwd (print working directory)

Regeln für File- und Verzeichnisnamen:maximal 255 Zeichenunzulässige Zeichen: / ? * “zulässige, aber von der Shell interpretierte Zeichen: < > | Leerzeichen (Blank)

optionale Trennung des Namens durch PunkteDer am weitesten rechts stehende Teil heißt Dateierweiterung oder Extention.Beispiele: prog.o index.html gcc.3.0.5

Mit einem Punkt beginnende Dateinamen gelten als „versteckt“: .bin-mal-weg

Betriebssysteme Dr. W. JakobStudiengang Kartographie und Geomatik Unix.ppt

16

Unix-FilesystemVerzeichnisbaum:/|+-dev|+-home| || +-herbert| || +-erich| | || | +-briefe| | | || | | +-anna| | | | || | | | +-brief1.txt| | | | || | | | +-brief2.txt| | | || | | +-gabi| | | | || | | | +-brief1.txt| | | | || | | | +-brief2.txt| | | || | | +-marie| | | || | | +-brief1.txt| | || | +-faxe| | | || | | +-bank| | | || | | +-vater

Drei Möglichkeiten ein Verzeichnis / eine Datei anzugeben:

absoluter Pfad: Geht vom Wurzelverzeichnis aus. Beispiel: /home/erich/briefe/anna

relativer Pfad: Geht vom Working-Directory aus.Beispiel von Erich’s Bankfaxe-Verzeichnis ausgehend:

../../briefe/anna

Pfadangabe ab dem Home-Directory: Beispiel: ~/briefe/annaDie Tilde ersetzt dabei das Home-Verzeichnis. Aus Benutzersicht ist er wie ein absoluter Pfad.

Was unterscheidet den Gültigkeitsbereich dieser Pfade?absoluter Pfad:Home-Verz.-Pfad:relativer Pfad:

Page 9: Unix - home.hs-karlsruhe.dejawi0001/BS-Vorlesung/K3_Unix_Handout_2FpS.pdf · 3 Betriebssysteme Dr. W. Jakob Studiengang Kartographie und Geomatik Unix.ppt 5 Zugang, einige einfache

9

Betriebssysteme Dr. W. JakobStudiengang Kartographie und Geomatik Unix.ppt

17

Unix-Filesystem

Ein absoluter Pfad beginnt immer mit dem /

Ein relativer Pfad beginnt miteinem Verzeichnisnamen: beschreibt ein Verzeichnis im aktuellen Arbeitsverz../: bezeichnet das aktuelle Arbeitsverzeichnis..: bezeichnet das Verzeichnis über dem Arbeitsverz.

Welche Pfade sind gültig (pwd /home/erich/faxe/vater)?home/erich/briefe/anna/brief2.txt../../briefe/anna/brief2.txt/home/herbert../bank../gabi/brief3.txt~/gabi/brief2.txt~/briefe/marie/brief1.txt./faxVonGestern.txt

Verzeichnisbaum:/|+-dev|+-home| || +-herbert| || +-erich| | || | +-briefe| | | || | | +-anna| | | | || | | | +-brief1.txt| | | | || | | | +-brief2.txt| | | || | | +-gabi| | | | || | | | +-brief1.txt| | | | || | | | +-brief2.txt| | | || | | +-marie| | | || | | +-brief1.txt| | || | +-faxe| | | || | | +-bank| | | || | | +-vater

Betriebssysteme Dr. W. JakobStudiengang Kartographie und Geomatik Unix.ppt

18

Unix-Filesystem

Zugriffsrechte:Drei Benutzerklassen:

user (u) Eigentümer des Objekts. Eigentümer ist der, der es angelegthat oder dem diese Rechte nachträglich übertragen wurden.

group (g) Gruppe von Benutzern. Ein Benutzer kann mehreren Gruppen angehören.

others (o) Alle anderen Benutzer

Drei Zugriffsrechte:read (r) Leserecht. Bei Verzeichnissen darf der Inhalt gelesen werden. write (w) Schreib- und Löschrecht. Bei fehlendem Schreibrecht kann

nach entsprechendem Nachfragen trotzdem gelöscht werden. execute (x) Ausführungsrecht. Bei Verzeichnissen vollständiger Zugriff.

D.h., der fremde Benutzer kann es zu seinem Working-Directory machen,neue Dateien anlegen und auf Dateien je nach ihren Rechten zugreifen.

Page 10: Unix - home.hs-karlsruhe.dejawi0001/BS-Vorlesung/K3_Unix_Handout_2FpS.pdf · 3 Betriebssysteme Dr. W. Jakob Studiengang Kartographie und Geomatik Unix.ppt 5 Zugang, einige einfache

10

Betriebssysteme Dr. W. JakobStudiengang Kartographie und Geomatik Unix.ppt

19

Unix-FilesystemZugriffsrechte (2):

Zum Zugriff auf eine Datei muss man Zugriff auf alle Verzeichnisse des Pfads und die Datei selbst haben.Das Recht, eine Datei anzulegen oder zu löschen hängt letztlich von den Verzeichnisrechten ab. Daher wird ein fremder Zugriff am effektivsten über Verzeichnissperren blockiert.

jar - -

-- - -jajar - x

jar - -

-- - -ja-- - x

-r - -

-- - --(-)r - -

-r - -

-- - ---- - -

Datei lesenDateirechtecdVerz.-ListingVerzeichnisrechte

cd: Kommandozum Verzeichnis-wechsel

(-): Anzeige nur der Namen der Objekte

Betriebssysteme Dr. W. JakobStudiengang Kartographie und Geomatik Unix.ppt

20

Unix-Filesystem

Zugriffsrechte (3):

Der Administrator (root) kann unabhängig von den Zugriffsrechten immer auf alles zugreifen. Warum?

jar w -

(-)r - -jar w x

-r w -

-r - --r - x

-r w -

-r - --r w -

-r w -

-r - --r - -

Datei löschen oder schreibenDateirechteDatei anlegenVerzeichnisrechte

(-): Löschen nur nach Rückfrage

Page 11: Unix - home.hs-karlsruhe.dejawi0001/BS-Vorlesung/K3_Unix_Handout_2FpS.pdf · 3 Betriebssysteme Dr. W. Jakob Studiengang Kartographie und Geomatik Unix.ppt 5 Zugang, einige einfache

11

Betriebssysteme Dr. W. JakobStudiengang Kartographie und Geomatik Unix.ppt

21

Unix-FilesystemFür Unix existieren verschiedene Filesysteme. Einige gebräuchliche:

maximale

Journaling BS Filegröße Filesystemgröße Dateianzahl

Reiser ja Linux, BSD 1 EB 1 EB 232-3

ext3 ja Linux, BSD 2 TB 32 TB variabel

ext4 ja Linux FS-Größe 1 EB variabel

UFS ja Solaris, 8 ZB 8 ZB variabelFreeBSD, NetBSD, (Max OS X, Linux)

xfs ja IRIX, Linux, 8 EB 8 EB 263 (~8*1018)FreeBSD

HFS+ ja, optional Mac OS 8, 9, X, 8 EB 16 EB 232-1teilweise Linux

1 TB = 1012 Byte, 1 PB = 1015 Byte, 1 EB = 1018 Byte, 1 ZB = 1021 ByteTera Peta Exa Zetta

Betriebssysteme Dr. W. JakobStudiengang Kartographie und Geomatik Unix.ppt

22

Datei- und verzeichnisorientierte Kommandos

Datei- und verzeichnisorientierte Kommandos:

Generell: Behandlung nur der wichtigsten Kommandos und OptionenSiehe Literatur und die Online-Dokumentation (z.B. man pages).

<datei> meint immer Datei oder Verzeichnis plus optionalem Pfad.

Wildcards:*: kein, ein oder mehrere beliebige Zeichen?: genau ein beliebiges Zeichen

Übungen:Was bedeutet:1.briefe*.doc

Was gehört dazu: briefe.doc briefe1.doc briefAnErich.doc

2.briefe?.docWas gehört dazu: briefe.doc briefe1.doc brief01.doc

Page 12: Unix - home.hs-karlsruhe.dejawi0001/BS-Vorlesung/K3_Unix_Handout_2FpS.pdf · 3 Betriebssysteme Dr. W. Jakob Studiengang Kartographie und Geomatik Unix.ppt 5 Zugang, einige einfache

12

Betriebssysteme Dr. W. JakobStudiengang Kartographie und Geomatik Unix.ppt

23

Datei- und verzeichnisorientierte Kommandos

Ausgabe des Verzeichnisinhalts:ls [<optionen>] [<datei(en)>]

Einige Optionen:-a Auch Einträge, die mit einem Punkt beginnen, anzeigen-l Anzeige in ausführlicher Form-r Reihenfolge der Ausgabe umkehren-t Sortierung nach dem Zeitpunkt der letzten Änderung-F Hinter jedem Verzeichnisnamen ein /, hinter jeder ausführbaren Datei ein *-R Ausgabe inklusive aller Subdirectories und deren Files

Die Optionsschalter sind miteinander kombinierbar, so liefern z.B.ls -la und ls -l -a

dasselbe Ergebnis.

Betriebssysteme Dr. W. JakobStudiengang Kartographie und Geomatik Unix.ppt

24

Datei- und verzeichnisorientierte Kommandos

Ergebgnis von ls –la:total 1048drwx------ 7 jawi0001 fbg01 1024 Feb 01 09:38 .drwxr-xr-x 712 bin bin 14848 Feb 02 15:06 ..-rw-r--r-- 1 jawi0001 fbg01 10326 Jan 08 11:04 .pinerc-rw-r--r-- 1 jawi0001 fbg01 177 Jun 27 1997 .plan-rwxr-xr-x 1 jawi0001 fbg01 713 May 03 1996 .profiledrwxr-xr-x 2 jawi0001 fbg01 512 Jan 18 17:01 .public_html-rw-r--r-- 1 jawi0001 fbg01 18 Jan 08 10:41 ausg.tmp-rw-r--r-- 1 jawi0001 fbg01 2141 Jun 27 1997 cline.gifdrwx------ 2 jawi0001 fbg01 512 Jan 08 11:04 mail

Zeitstempel(letzte Modifikation)

Zugriffscodes für User, Group und Others zu je drei Rechte: r, w, x. - = Recht ist nicht

gesetzt.

Spalte Dateiart:- = Ordinary Filed = Directoryl = Link. . .

Gesamtgröße in Blöcken

FilenamenDateigröße in Bytes

Gruppe des Datei-

besitzers

Username des Dateibesitzers

Gilt so für AIX !Gilt so für AIX !

Page 13: Unix - home.hs-karlsruhe.dejawi0001/BS-Vorlesung/K3_Unix_Handout_2FpS.pdf · 3 Betriebssysteme Dr. W. Jakob Studiengang Kartographie und Geomatik Unix.ppt 5 Zugang, einige einfache

13

Betriebssysteme Dr. W. JakobStudiengang Kartographie und Geomatik Unix.ppt

25

Datei- und verzeichnisorientierte Kommandos

Übung:Was bedeuten: rwxr-xr--

rw-r--r--

Änderung der Zugriffsrechte:chmod [-R] <wer><operator><was> <objekt(e)> (change mode)

<wer>: u, g, o oder a = alle, also ugo<operator>: + fügt die Rechte hinzu

- nimmt die Rechte weg= setzt die Rechte neu

<was>: r, w, x (die Zugriffsrechte)

<objekt(e)>: Dateien, Verzeichnisse

Wie verlieren bei obigen Dateien Gruppe und Andere alle Rechte?

.

-R : rekursiver Abstieg:Änderung der Rechte aller Dateien und Verzeichnisse des angegebenen Verzeichnisses

Betriebssysteme Dr. W. JakobStudiengang Kartographie und Geomatik Unix.ppt

26

Datei- und verzeichnisorientierte KommandosAusgabe des Working Directories (aktuellen Verzeichnisses):

pwd (print working directory)

Anlegen eines oder mehrerer Verzeichnisse:mkdir [<optionen>] <verzeichnis(se)> (make directory)

Erzeugung der Verzeichnisse im aktuellen Verzeichnis.-p: legt ganze Pfade an. Also auch Zwischenverzeichnisse.

Beispiel:mkdir neu/zwischen/ganzneu Geht das?

Verzeichniswechsel:cd [<verzeichnis>] (change directory)

<verzeichnis> kann auch ein Pfad sein. Ohne <verzeichnis>: Wechsel zum Home-Verzeichnis

Page 14: Unix - home.hs-karlsruhe.dejawi0001/BS-Vorlesung/K3_Unix_Handout_2FpS.pdf · 3 Betriebssysteme Dr. W. Jakob Studiengang Kartographie und Geomatik Unix.ppt 5 Zugang, einige einfache

14

Betriebssysteme Dr. W. JakobStudiengang Kartographie und Geomatik Unix.ppt

27

Datei- und verzeichnisorientierte Kommandos

Übungen:1. Einloggen und Bourne Shell mit bash aufrufen.

2. Verzeichnis uebung anlegen:

3. Verzeichniswechsel nach uebung:

4. Erzeugung einer Datei durch: ls > bsp.txt (Erklärung später)

5. Anzeige des Verzeichnisinhalts:

6. Anzeige des Dateiinhalts:

7. Die Datei privatisieren:

8. Prüfen:

9. Sich selbst das Leserecht nehmen:

10.Prüfen:

11.Anzeige des Dateiinhalts:

12.Leserecht wieder setzen und überprüfen:

Betriebssysteme Dr. W. JakobStudiengang Kartographie und Geomatik Unix.ppt

28

Datei- und verzeichnisorientierte Kommandos

Kopieren von Dateien:cp [<optionen>] <quell-datei> <ziel-datei> (copy)

Die Quelldatei wird unter dem Namen der Zieldatei angelegt. Eine existierende Zieldatei wird überschrieben.Eigentümer wird derjenige, der das Kommando ausführt.

Kopieren ins aktuelle Verzeichnis:cp [<optionen>] <quell-datei> .

Optionen:-i Aktiviert Nachfrage bei existierender Zieldatei

-r Kopiert ganze Verzeichnisbäume, Quelle und Ziel müssen Verzeichnisse sein.Zielverzeichnis existiert: Neues Unterverzeichnis mit dem Namen des Quellverz.Zielverzeichnis existiert nicht: Erzeugung und Hineinkopieren des Inhalt des Quellverzeichnisses.

Page 15: Unix - home.hs-karlsruhe.dejawi0001/BS-Vorlesung/K3_Unix_Handout_2FpS.pdf · 3 Betriebssysteme Dr. W. Jakob Studiengang Kartographie und Geomatik Unix.ppt 5 Zugang, einige einfache

15

Betriebssysteme Dr. W. JakobStudiengang Kartographie und Geomatik Unix.ppt

29

Datei- und verzeichnisorientierte Kommandos

Dateien oder Verzeichnisse umbenennen und verschieben:mv [<optionen>] <quelle> <ziel> (move)

Quelle und Ziel im gleichen Verzeichnis? Ja: Umbenennen!Nein: Verschieben!

Quelle und Ziel sind Verzeichnisse: Verschiebung des Quellverzeichnisbaums.Bei gleichem Laufwerk werden nur Verzeichniseinträge verändert.–i-Option: Nachfragen bevor überschrieben wird.

Ausgabe des Inhalts einer oder mehrerer Dateien:cat [<optionen>] [<datei(en)>] (concatenate)

Eine oder mehrere Dateien werden hintereinander ins Terminal ausgegeben.Fehlt die Dateiangabe, wird vom Terminal gelesen! (Abbruch mit ctrl + d)

Betriebssysteme Dr. W. JakobStudiengang Kartographie und Geomatik Unix.ppt

30

Datei- und verzeichnisorientierte Kommandos

Löschen von Dateien:rm [<optionen>] <datei(en)> (remove)

Fehlende Schreibrechte: Nachfragen

Optionen:–i Nachfragen, bevor gelöscht wird.-r Löschung von Verzeichnissen samt Inhalt (rekursiver Abstieg)

Vorsicht! Ohne -i erfolgt keine Nachfrage!

Was bewirkt rm –r .. ?

Löschen von Verzeichnissen:rmdir <verzeichnis(se)> (remove directory)

Die Verzeichnisse müssen leer sein.

Page 16: Unix - home.hs-karlsruhe.dejawi0001/BS-Vorlesung/K3_Unix_Handout_2FpS.pdf · 3 Betriebssysteme Dr. W. Jakob Studiengang Kartographie und Geomatik Unix.ppt 5 Zugang, einige einfache

16

Betriebssysteme Dr. W. JakobStudiengang Kartographie und Geomatik Unix.ppt

31

Übungen:1. Erzeugung folgenden Verzeichnisbaums in uebung:

uebungsub1

sub1_asub1_b

sub2sub2_asub2_b

2. Anzeigen des Verzeichnisbaums:

Falls anderes Ergebnis:1. Sicherstellen, dass in uebung:

cd ~/uebung2. Listing der Verzeichnisse in uebung:

ls -F3. Löschung der angelegten Verzeichnisse

samt Unterverzeichnissen: rm –r sub1 sub2

Datei- und verzeichnisorientierte Kommandos

bsp.txt sub2/ sub1/ ./sub1:sub1_a/ sub1_b/

./sub1/sub1_a:

./sub1/sub1_b:

./sub2:sub2_a/ sub2_b/

./sub2/sub2_a:

./sub2/sub2_b:

Betriebssysteme Dr. W. JakobStudiengang Kartographie und Geomatik Unix.ppt

32

Übungen:3. Kopieren von bsp.txt nach sub1:

4. Anzeigen des Verzeichnisbaums:

5. Kopieren von bsp.txt nach sub2_a als doc-File:

6. Wechsel nach sub1 und Kopieren des doc-Files nach sub1_a (relative Pfade):

Datei- und verzeichnisorientierte Kommandos

Page 17: Unix - home.hs-karlsruhe.dejawi0001/BS-Vorlesung/K3_Unix_Handout_2FpS.pdf · 3 Betriebssysteme Dr. W. Jakob Studiengang Kartographie und Geomatik Unix.ppt 5 Zugang, einige einfache

17

Betriebssysteme Dr. W. JakobStudiengang Kartographie und Geomatik Unix.ppt

33

Datei- und verzeichnisorientierte Kommandos

Übungen:

7. Anzeigen des gesamten Verzeichnisbaums:

8. Wechsel ins uebung-Verzeichnis mit einem Pfad ab dem Homeverzeichnis:

9. Ermittlung des Pfads zum Homeverzeichnis:

10.Wechsel ins sub2-Verzeichnis mit einem absolutem Pfad:

ls -FR ..bsp.txt sub1/ sub2/../sub1:bsp.txt sub1_a/ sub1_b/

../sub1/sub1_a:bsp.doc

../sub1/sub1_b:

../sub2:sub2_a/ sub2_b/

../sub2/sub2_a:bsp.doc

../sub2/sub2_b:

Betriebssysteme Dr. W. JakobStudiengang Kartographie und Geomatik Unix.ppt

34

Datei- und verzeichnisorientierte KommandosVerweise auf Dateien und Verzeichnisse:

ln [<optionen>] <original> <link> (link)

Hard- und Softlinks.

Die gebräuchlicheren Softlinks (-s) erlauben Verweise:auf Verzeichnisse über Dateisystemgrenzen innerhalb eines Verzeichnisbaums hinweg

Übung und Beispiel:Erzeugung eines Softlinks namens myLink zum Verzeichnis sub1_a in uebung:

Page 18: Unix - home.hs-karlsruhe.dejawi0001/BS-Vorlesung/K3_Unix_Handout_2FpS.pdf · 3 Betriebssysteme Dr. W. Jakob Studiengang Kartographie und Geomatik Unix.ppt 5 Zugang, einige einfache

18

Betriebssysteme Dr. W. JakobStudiengang Kartographie und Geomatik Unix.ppt

35

Redirection, Pipes und Filter

Redirection, Pipes und Filter:

Redirection:Umlenkung der Standard-aus- und -eingabe.

Standardeingabe: Tastatur Standardausgabe: Bildschirm Fehlerausgabe: Bildschirm

Diese drei Datenströme kann man in Dateien umlenken:Standardeingabe: <kommando> < <datei> Eingabe aus Datei statt Tastatur

Standardausgabe: <kommando> > <datei> Ausgabe in Datei statt Bildschirm<kommando> >> <datei> Ausgabe an Datei anhängen

Fehlerausgabe: <kommando> 2> <datei> Ausgabe in Datei statt Bildschirm<kommando> 2>> <datei> Ausgabe an Datei anhängen

Warum die 2 ?

Betriebssysteme Dr. W. JakobStudiengang Kartographie und Geomatik Unix.ppt

36

Redirection, Pipes und Filter

Redirection (2):Das kann man kombinieren, z.B.:

<kommando> < abc >> uvw 2> xxyz

Das bedeutetLesen aus:Schreiben nach: wie:Fehler nach: wie:

Page 19: Unix - home.hs-karlsruhe.dejawi0001/BS-Vorlesung/K3_Unix_Handout_2FpS.pdf · 3 Betriebssysteme Dr. W. Jakob Studiengang Kartographie und Geomatik Unix.ppt 5 Zugang, einige einfache

19

Betriebssysteme Dr. W. JakobStudiengang Kartographie und Geomatik Unix.ppt

37

Redirection, Pipes und Filter

Pipes:Verknüpfung zweier Kommandos derart,

dass die Ausgabe des ersten zur Eingabe des zweiten wird.

Beispiel zu Motivation:Zählung der Objekte in einem Verzeichnis:

cd ~/uebung sichert ab, dass in uebungls > dir.tmp Liste aller Objekte in dir.tmpwc -w dir.tmp Zählt die Worte in einer Datei.rm dir.tmp Diese Datei brauchen wir nicht mehr.

Das ist umständlich!Viel besser wäre es, die Ausgabe von ls mit der Eingabe des wc zu kombinieren.

Etwa so:

Betriebssysteme Dr. W. JakobStudiengang Kartographie und Geomatik Unix.ppt

38

Redirection, Pipes und Filter

Pipes (2):Syntax der Kommandoverknüpfung mit Pipes:

<kommando> (| <kommando>)+

Wie sähe das Zählbeispiel aus?

Die Syntax zeigt, dass viele Kommandos mit einer Pipe verknüpft werden können.

Pipes und Redirection kann man miteinander kombinieren. Z.B.:ls | wc –w > fileAnz.txtcat fileAnz.txt Prüfen, was in der Datei steht!

Page 20: Unix - home.hs-karlsruhe.dejawi0001/BS-Vorlesung/K3_Unix_Handout_2FpS.pdf · 3 Betriebssysteme Dr. W. Jakob Studiengang Kartographie und Geomatik Unix.ppt 5 Zugang, einige einfache

20

Betriebssysteme Dr. W. JakobStudiengang Kartographie und Geomatik Unix.ppt

39

Redirection, Pipes und Filter

Pipes (3):

Zwischenergebnisse gehen in Pipes verloren.

Mit dem tee-Kommando kann man sie abspeichern:tee [<optionen>] <datei>

Durch die -a-Option können die Daten an die Datei angehängt werden. Default ist ein Neuanlegen.

Beispiel:ls | tee dliste.txt | wc –wcat dliste.txt

tee ist so eineArt T-Stück:

Betriebssysteme Dr. W. JakobStudiengang Kartographie und Geomatik Unix.ppt

40

Redirection, Pipes und Filter

Filter:Kommandos, die durch den Pipe-Mechanismus verknüpft werden können.Also alle Befehle, die

ihre Eingabe vom Terminal erwarten, wenn keine Datei angegeben wird, und/oderihre Ergebnisse auf das Terminal ausgeben

Wichtige Filterbefehle:cat Verbindet Dateien, Ergebnis ins Terminal (siehe Folie 29)wc Zählt Zeilen, Worte und Zeichenfgrep, grep Sucht nach Zeichenketten und Suchmusternsort Sortiertmore Passt die Ausgabe an die Fenstergröße an, seitenweise Ausgabetail Teilweise Ausgabe einer Datei

. . .

Page 21: Unix - home.hs-karlsruhe.dejawi0001/BS-Vorlesung/K3_Unix_Handout_2FpS.pdf · 3 Betriebssysteme Dr. W. Jakob Studiengang Kartographie und Geomatik Unix.ppt 5 Zugang, einige einfache

21

Betriebssysteme Dr. W. JakobStudiengang Kartographie und Geomatik Unix.ppt

41

Redirection, Pipes und Filter

Ermittlung der Anzahl der Zeichen, Worte und Zeilen:wc [optionen] [<file>] (word count)

Optionen:-l Zählung der Zeilen (lines)-w Zählung der Worte (words)-c Zählung der Zeichen (characters)

Betriebssysteme Dr. W. JakobStudiengang Kartographie und Geomatik Unix.ppt

42

Redirection, Pipes und Filter

Durchsuchen von Dateien nach einem String:fgrep [<optionen>] <string> [<file(s)>] (fast grep)

Standardausgabe ist die gefundene Zeile.Bei mehreren Dateien wird der Dateiname der Ergebnismeldung vorangestellt.

Einige Optionen:-i Ignoriert die Groß/Kleinschreibung bei der Suche.-v Ausgabe der Zeilen, die den String nicht enthalten.-n Zusätzliche Ausgabe der Zeilennummer

Leistungsstärkere Variante:grep [<optionen>] <reg-expr> [<file(s)>] (get regular expression)

Einfachste Form eines regulären Ausdrucks (siehe Literatur): ein String

Page 22: Unix - home.hs-karlsruhe.dejawi0001/BS-Vorlesung/K3_Unix_Handout_2FpS.pdf · 3 Betriebssysteme Dr. W. Jakob Studiengang Kartographie und Geomatik Unix.ppt 5 Zugang, einige einfache

22

Betriebssysteme Dr. W. JakobStudiengang Kartographie und Geomatik Unix.ppt

43

Redirection, Pipes und Filter

Übungen:1. Vorbereitung:

cd ~/uebungcp bsp.txt karl.txtcp bsp.txt otto.txtcp bsp.txt luise.datcp bsp.txt xantippe.tmp jetzt sollten 5 Dateien im Verzeichnis uebung stehen!

2.ls –F > nameList.txt Legt eine Datei mit den Objektnamen ancat nameList.txt Was steht drin?

3. Wie zählt man die darin enthaltenen Files? Erst mal selektieren! Wie?

Betriebssysteme Dr. W. JakobStudiengang Kartographie und Geomatik Unix.ppt

44

Redirection, Pipes und Filter

Übungen:

4. Extraktion der Filenamen in fnamen.txt und Ermittlung ihrer Anzahl:

5. Ermittlung der Unterverzeichnisse im Arbeitsverzeichnis:

Page 23: Unix - home.hs-karlsruhe.dejawi0001/BS-Vorlesung/K3_Unix_Handout_2FpS.pdf · 3 Betriebssysteme Dr. W. Jakob Studiengang Kartographie und Geomatik Unix.ppt 5 Zugang, einige einfache

23

Betriebssysteme Dr. W. JakobStudiengang Kartographie und Geomatik Unix.ppt

45

Redirection, Pipes und Filter

Sortieren:sort [<optionen>] [<datei(en)>]

Das Ergebnis der zeilenweisen Sortierung wird ins Terminal geschrieben. Der Inhalt der Dateien bleibt dabei unverändert.Mehrere Dateien werden als Ganzes sortiert.

Optionen:-d Lexikographische Sortierung (nach Buchstaben, Ziffern und Leerzeichen) -f Ignorierung von Groß- und Kleinschreibung -r Rückwärts sortieren-o <file> Ergebnisausgabe in die Datei <file> statt ins Terminal

Betriebssysteme Dr. W. JakobStudiengang Kartographie und Geomatik Unix.ppt

46

Redirection, Pipes und Filter

Übungen:1. Absteigende Sortierung der Filenamen und Ausgabe aufs Terminal:

2. Absteigende Sortierung des Inhalts der Datei fnamen.txt:

Page 24: Unix - home.hs-karlsruhe.dejawi0001/BS-Vorlesung/K3_Unix_Handout_2FpS.pdf · 3 Betriebssysteme Dr. W. Jakob Studiengang Kartographie und Geomatik Unix.ppt 5 Zugang, einige einfache

24

Betriebssysteme Dr. W. JakobStudiengang Kartographie und Geomatik Unix.ppt

47

Redirection, Pipes und Filter

Seitenweise Anzeige:more [<optionen>] [<datei(en)>]

Nach jeder Bildschirmseite wartet more auf eine Eingabe. Einige Kommandos:<leertaste> Nächste Seite anzeigen<return> Nächste Zeile anzeigen.b Eine Seite zurück.q Quit. Beenden von more.

Einige Optionen:-c Clear screen. Der Bildschirm wird vor jeder Ausgabe gelöscht.-<n> Seitenwechsel nach <n> Zeilen.+<n> Ausgabe erst ab der <n>-ten Zeile der Datei.

Eine typische Anwendung ist die seitenweise Ausgabe des Verzeichnisses mitls -la | more

Betriebssysteme Dr. W. JakobStudiengang Kartographie und Geomatik Unix.ppt

48

Redirection, Pipes und Filter

Teilweise Ausgabe einer Datei:tail [<optionen>] [<datei>]

Einige Optionen:+<n> Ausgabe ab der n-ten Zeile-<n> Ausgabe der letzten n Zeilen-f Permanente Ausgabe der letzten Zeilen einer Datei bei Aktualisierung

Anwendungsbeispiel:Überwachung einer Errorlog-Datei bei der Script-Entwicklung für Internetanwendungen:

tail –f messages.log

Page 25: Unix - home.hs-karlsruhe.dejawi0001/BS-Vorlesung/K3_Unix_Handout_2FpS.pdf · 3 Betriebssysteme Dr. W. Jakob Studiengang Kartographie und Geomatik Unix.ppt 5 Zugang, einige einfache

25

Betriebssysteme Dr. W. JakobStudiengang Kartographie und Geomatik Unix.ppt

49

Editor pico

Editor pico:Neben dem Standardeditor vi ein verbreiteter einfacher Editor. Aufruf:

pico [<file>]

Online Hilfe:Ctrl + g

Filename

Titelzeile

Dateiinhalt

Man beachte, dass die Maus hier nicht funktioniert!

Betriebssysteme Dr. W. JakobStudiengang Kartographie und Geomatik Unix.ppt

50

Editor picoAlles weitere kann man der Online-Hilfe entnehmen:

Die Ctrl-Taste wird hier durch ein ^ dargestellt. Bei Aufruf ohne Dateiangabe wird bei Beendigung nach einem Dateinamen gefragt.Bei Beendigung ohne vorherige Sicherung erfolgt eine Abfrage.

Page 26: Unix - home.hs-karlsruhe.dejawi0001/BS-Vorlesung/K3_Unix_Handout_2FpS.pdf · 3 Betriebssysteme Dr. W. Jakob Studiengang Kartographie und Geomatik Unix.ppt 5 Zugang, einige einfache

26

Betriebssysteme Dr. W. JakobStudiengang Kartographie und Geomatik Unix.ppt

51

Kommandos zur Prozessverwaltung

Unix Prozesskonzept und prozessorientierte Kommandos:Prozess = ein Programm während der Ausführung (etwas vereinfacht)

Ein Programm kann mehrfach gestartet werden mehrere Prozess-Inkarnationen eines Programms

Zwei Arten von Prioritäten: Eine wird vom System vergeben, die andere vom Benutzer (nice).

Systemprioritäten je nach bisher verbrauchter Zeit, Größe, Wartezeit oder Ausführungsmodus (System- oder Benutzermodus), …

Prozesse können ihrerseits Prozesse, sog. Child-Prozesse, erzeugen.

Jeder Prozess erhält eine eindeutige Identifikationsnummer, die PID (processidentification). Diese wird in Kommandos benötigt.

Betriebssysteme Dr. W. JakobStudiengang Kartographie und Geomatik Unix.ppt

52

Kommandos zur Prozessverwaltung

Liste aller Prozesse:ps [<option(en)>]

Wichtige Optionen:-e Informationen über alle Prozesse (every)-f Vollständige Informationen, darunter die gesamte Aufrufzeile (full)-l Viele Informationen (long)-t<tn> Beschränkung auf die dem Terminal <tn> zugeordneten Prozesse-u<un> Beschränkung auf die dem User <un> zugeordneten Prozesse.

<un> kann die UID oder der Login-Name sein.

Das eigene Terminal kann man mitwho am I

in Erfahrung bringen (2. Spalte).

Page 27: Unix - home.hs-karlsruhe.dejawi0001/BS-Vorlesung/K3_Unix_Handout_2FpS.pdf · 3 Betriebssysteme Dr. W. Jakob Studiengang Kartographie und Geomatik Unix.ppt 5 Zugang, einige einfache

27

Betriebssysteme Dr. W. JakobStudiengang Kartographie und Geomatik Unix.ppt

53

Kommandos zur ProzessverwaltungBeispiel:ps -l –u jawi0001S UID PID PPID C PRI NI SZ WCHAN TTY TIME CMDR 163008 13473 24551 13 66 20 140 pts/20 0:00 psS 163008 24551 42462 1 60 20 288 pts/20 0:03 bashS 163008 42462 36061 0 60 20 284 pts/20 0:00 ksh

Erläuterungen:S Prozesszustand: R=Running, S=Sleep, W=Waiting, ... (state)UID Benutzernummer (user identification)PID Prozessnummer (process identification)PPID PID des Elternprozesses (parent process identification)PRI Priorität: je größer die Zahl, desto geringer die Priorität (priority)NI Nice-Wert: je größer die Zahl, desto geringer die PrioritätSZ Prozessgröße in Seiten. Die Seitengröße ist rechnerabhängig. (size)WCHAN Ereignis(se), auf die der Prozess wartet.TTY zugeordnetes TerminalTIME bisher verbrauchte CPU-ZeitCMD Kommandoname

Betriebssysteme Dr. W. JakobStudiengang Kartographie und Geomatik Unix.ppt

54

Die bash ist ein Child-Prozess der

ksh

Kommandos zur Prozessverwaltung

Prozessaufruf-Ketten:

Beispiel:ps -l –u jawi0001S UID PID PPID C PRI NI SZ WCHAN TTY TIME CMDR 163008 13473 24551 13 66 20 140 pts/20 0:00 psS 163008 24551 42462 1 60 20 288 pts/20 0:03 bashS 163008 42462 36061 0 60 20 284 pts/20 0:00 ksh

Login Shellksh

Der ps-Prozess ist ein Child-Prozess der

bash

Page 28: Unix - home.hs-karlsruhe.dejawi0001/BS-Vorlesung/K3_Unix_Handout_2FpS.pdf · 3 Betriebssysteme Dr. W. Jakob Studiengang Kartographie und Geomatik Unix.ppt 5 Zugang, einige einfache

28

Betriebssysteme Dr. W. JakobStudiengang Kartographie und Geomatik Unix.ppt

55

Kommandos zur Prozessverwaltung

Nice-Priorität:Dient dazu, rechenzeit-intensive Programme auf die Nutzung ungenutzter Zeiten zu

beschränken.

Damit verhält man sich nett zu den anderen Benutzern, ist also „nice“.

nice [-<incr>] <prog_aufruf><incr>: Default 10. Je größer der Wert, desto geringer die Priorität.

Betriebssysteme Dr. W. JakobStudiengang Kartographie und Geomatik Unix.ppt

56

Kommandos zur Prozessverwaltung

Prozessterminierung:kill -9 <pid>

9 steht für SIGKIL, ein vom Prozess nicht ignorierbares Signal.

Voraussetzung:Eigener Prozess, d.h. vom gleichen Benutzer gestartet.Man verfügt als Administrator über die notwendigen Rechte.

Vorsicht:Alle noch nicht geschriebenen Daten können verloren gehen und vom Programm geöffnete Dateien können zerstört werden.

Page 29: Unix - home.hs-karlsruhe.dejawi0001/BS-Vorlesung/K3_Unix_Handout_2FpS.pdf · 3 Betriebssysteme Dr. W. Jakob Studiengang Kartographie und Geomatik Unix.ppt 5 Zugang, einige einfache

29

Betriebssysteme Dr. W. JakobStudiengang Kartographie und Geomatik Unix.ppt

57

Kommandos zur ProzessverwaltungHintergrundprozesse:Ein aus einer Shell gestartetes Programm mit eigenem Fenster

blockiert die Shell.

Lösung:Starten des Programms als Hintergrundprozess:

<prog_aufruf> &

Wenn er schon gestartet ist:Mit Ctrl + z unterbrechen (suspend) und mit

bg (background)als Hintergrundprozess fortsetzen.

Liste der aktuellen Background-Jobs:jobs [<option(en)>]

Beispiel:jobs -l[1]+ 45817 Running xemacs &

PIDAufrufzeile

Betriebssysteme Dr. W. JakobStudiengang Kartographie und Geomatik Unix.ppt

58

Kommandos zur Prozessverwaltung

Übung:1. Start des Editor pico im Hintergrund:

[1] 847914

2. Auflistung der Hintergrundjobs:

[1]+ 847914 Stopped (tty output) pico

3. Terminierung des Hintergrundjobs:

[1]+ Killed pico

PID

lfd. Nummer des Hintergrundjobs

Page 30: Unix - home.hs-karlsruhe.dejawi0001/BS-Vorlesung/K3_Unix_Handout_2FpS.pdf · 3 Betriebssysteme Dr. W. Jakob Studiengang Kartographie und Geomatik Unix.ppt 5 Zugang, einige einfache

30

Betriebssysteme Dr. W. JakobStudiengang Kartographie und Geomatik Unix.ppt

59

Shell-Scripts

Shell-Scripts:Shell-Scripts sind Textdateien:

Enthalten eine Folge von Programmaufrufen und /oder Shell-KommandosKönnen eine Ablaufsteuerung enthalten Beim Aufruf können dem Script Parameter mitgegeben werden

Sie spielen in der Administration und Konfiguration von Unix eine große Rolle.

Jede Shell hat ihre eigene Kommandosprache. Daher ist ein Eintrag in der ersten Zeile notwendig, der die ausführende Shell bestimmt. z.B.:

#!/usr/bin/ksh für die Korn shell

#!/usr/pack/bash-4.0-ab/bin/bash für die Bourne again shell

Aufruf:source <script-file> ( <parameter>)*

Wenn die Scriptdatei ausführbar ist (x-Recht), kann man source weglassen.

Betriebssysteme Dr. W. JakobStudiengang Kartographie und Geomatik Unix.ppt

60

Shell-Scripts

Kommando-Übersicht:Ein- und AusgabekommandosLogische und arithmetische AusdrückeAblaufkontrolle:

Bedingte AnweisungenZählschleifenbedingte SchleifenSchleifenabbruch

KommentareKommando zum Verlassen des ScriptsAufruf anderer ScriptsAuswertung von Exit-Stati aufgerufener Programme und Shells

Page 31: Unix - home.hs-karlsruhe.dejawi0001/BS-Vorlesung/K3_Unix_Handout_2FpS.pdf · 3 Betriebssysteme Dr. W. Jakob Studiengang Kartographie und Geomatik Unix.ppt 5 Zugang, einige einfache

31

Betriebssysteme Dr. W. JakobStudiengang Kartographie und Geomatik Unix.ppt

61

Shell-Scripts

Login-Scripts:Eine der Login-Shell zugeordnete Script-Datei, die beim Login durchlaufen wird.Login-Scripts stehen im Home-Directory.

Für die korn-Shell: .profile Testaufruf ohne Aus/Einloggen: . .profileDarin könnte stehen: bash # Aufruf einer besseren Shell

Für die bash: .bashrcDie bash ist moderner und folgt dem Ressourcenfile-Schema: .<progname>rc

Darin können z.B. Kommando-Makros (alias) oderDefaultrechte für neu angelegte Dateien und Verzeichnisse (umask)

vereinbart werden.

Betriebssysteme Dr. W. JakobStudiengang Kartographie und Geomatik Unix.ppt

62

Shell-Scripts

Ausgabe:echo "<string>"

Die Zeichenkette <string> darf leer sein oder Variablen enthalten.

Beispiele:echo "Hallo Karl-Otto, auf geht‘s! "echo ""echo "Der Pfad lautet heute: $PATH"

Kommentar:Der Text hinter einem # ist ein Kommentar.

Page 32: Unix - home.hs-karlsruhe.dejawi0001/BS-Vorlesung/K3_Unix_Handout_2FpS.pdf · 3 Betriebssysteme Dr. W. Jakob Studiengang Kartographie und Geomatik Unix.ppt 5 Zugang, einige einfache

32

Betriebssysteme Dr. W. JakobStudiengang Kartographie und Geomatik Unix.ppt

63

Shell-Scripts

Kommando-Makros:alias <name>=<wert>

Der wert muss in Anführungszeichen stehen, wenn Blanks enthalten sind.

Auflistung aller Definitionen: aliasLöschung einer Definition: unalias <name>Löschung aller Definitionen: unalias -a

Beispiele:alias ll="ls –laF" # ausführliches Listingalias dt="ls -ctl" # Nach Datum absteigend sortiertalias ld="ls -l | fgrep drwx" # Auflistung aller Verzeichnissealias ty=morealias h=historyalias ren=mv