35
Unix- Praktikum Dirk Frettl¨ oh Dateitypen Zeichenkodier. Textkodierungen Ein-/Ausgabe- umleitung Grundidee Anwendungen Ein-/Ausgabe- weiterleitung Grundidee Anwendungen Weitere Kommandos Ausblick Vorlesung Unix-Praktikum 3. Dateitypen und Ein-/Ausgabeumleitung Dirk Frettl¨ oh Technische Fakult¨ at Universit¨ at Bielefeld (Folien nach Carsten Gn¨ orlich) 24.Oktober 2018 1 / 35

Vorlesung Unix-Praktikum - 3. Dateitypen und Ein ...frettloe/teach/unix/unix03.pdf · Unix-Praktikum Dirk Frettl oh Dateitypen Zeichenkodier. Textkodierungen Ein-/Ausgabe-umleitung

Embed Size (px)

Citation preview

Page 1: Vorlesung Unix-Praktikum - 3. Dateitypen und Ein ...frettloe/teach/unix/unix03.pdf · Unix-Praktikum Dirk Frettl oh Dateitypen Zeichenkodier. Textkodierungen Ein-/Ausgabe-umleitung

Unix-Praktikum

Dirk Frettloh

Dateitypen

Zeichenkodier.

Textkodierungen

Ein-/Ausgabe-umleitung

Grundidee

Anwendungen

Ein-/Ausgabe-weiterleitung

Grundidee

Anwendungen

Weitere Kommandos

Ausblick

Vorlesung Unix-Praktikum3. Dateitypen und Ein-/Ausgabeumleitung

Dirk Frettloh

Technische FakultatUniversitat Bielefeld

(Folien nach Carsten Gnorlich)

24.Oktober 2018

1 / 35

Page 2: Vorlesung Unix-Praktikum - 3. Dateitypen und Ein ...frettloe/teach/unix/unix03.pdf · Unix-Praktikum Dirk Frettl oh Dateitypen Zeichenkodier. Textkodierungen Ein-/Ausgabe-umleitung

Unix-Praktikum

Dirk Frettloh

Dateitypen

Zeichenkodier.

Textkodierungen

Ein-/Ausgabe-umleitung

Grundidee

Anwendungen

Ein-/Ausgabe-weiterleitung

Grundidee

Anwendungen

Weitere Kommandos

Ausblick

Willkommen zur dritten VorlesungWas gab es beim letzten Mal?

I Dateisystem

I Erste Kommandozeilenbefehle:pwd, ls, cd, cp, mkdir, mv, rm, rmdir

2 / 35

Page 3: Vorlesung Unix-Praktikum - 3. Dateitypen und Ein ...frettloe/teach/unix/unix03.pdf · Unix-Praktikum Dirk Frettl oh Dateitypen Zeichenkodier. Textkodierungen Ein-/Ausgabe-umleitung

Unix-Praktikum

Dirk Frettloh

Dateitypen

Zeichenkodier.

Textkodierungen

Ein-/Ausgabe-umleitung

Grundidee

Anwendungen

Ein-/Ausgabe-weiterleitung

Grundidee

Anwendungen

Weitere Kommandos

Ausblick

Willkommen zur dritten VorlesungWas machen wir heute?

DateitypenZeichenkodierungTextkodierungen

Ein-/AusgabeumleitungGrundideeAnwendungen

Ein-/AusgabeweiterleitungGrundideeAnwendungenWeitere Kommandos

Ausblick

3 / 35

Page 4: Vorlesung Unix-Praktikum - 3. Dateitypen und Ein ...frettloe/teach/unix/unix03.pdf · Unix-Praktikum Dirk Frettl oh Dateitypen Zeichenkodier. Textkodierungen Ein-/Ausgabe-umleitung

Unix-Praktikum

Dirk Frettloh

Dateitypen

Zeichenkodier.

Textkodierungen

Ein-/Ausgabe-umleitung

Grundidee

Anwendungen

Ein-/Ausgabe-weiterleitung

Grundidee

Anwendungen

Weitere Kommandos

Ausblick

DateitypenDateien sind Bytefolgen

... 54h 65h 78h 74h ...

Hexadezimal (Basis 16)

... 84 101 120 116 ...

Dezimal

4 / 35

Page 5: Vorlesung Unix-Praktikum - 3. Dateitypen und Ein ...frettloe/teach/unix/unix03.pdf · Unix-Praktikum Dirk Frettl oh Dateitypen Zeichenkodier. Textkodierungen Ein-/Ausgabe-umleitung

Unix-Praktikum

Dirk Frettloh

Dateitypen

Zeichenkodier.

Textkodierungen

Ein-/Ausgabe-umleitung

Grundidee

Anwendungen

Ein-/Ausgabe-weiterleitung

Grundidee

Anwendungen

Weitere Kommandos

Ausblick

DateitypenASCII-Kodierung

... 54h 65h 78h 74h ...

Hexadezimal (Basis 16)

willkürliche (!) Abbildung von

Bytes auf Buchstaben, Zeichen

... 84 101 120 116 ...

Dezimal

... ...

ASCII

T e x t

5 / 35

Page 6: Vorlesung Unix-Praktikum - 3. Dateitypen und Ein ...frettloe/teach/unix/unix03.pdf · Unix-Praktikum Dirk Frettl oh Dateitypen Zeichenkodier. Textkodierungen Ein-/Ausgabe-umleitung

Unix-Praktikum

Dirk Frettloh

Dateitypen

Zeichenkodier.

Textkodierungen

Ein-/Ausgabe-umleitung

Grundidee

Anwendungen

Ein-/Ausgabe-weiterleitung

Grundidee

Anwendungen

Weitere Kommandos

Ausblick

DateitypenMit hexdump in die Datei hineinschauen

hexdump (zeige Bytes einer Datei in Hexadezimal-Kodierung)

\$ hexdump -C test.txt

00000000 54 65 78 74 0a |Text.|

00000005

... 54h 65h 78h 74h ...

Hexadezimal (Basis 16)

willkürliche (!) Abbildung von

Bytes auf Buchstaben, Zeichen

... ...

ASCII

T e x t

6 / 35

Page 7: Vorlesung Unix-Praktikum - 3. Dateitypen und Ein ...frettloe/teach/unix/unix03.pdf · Unix-Praktikum Dirk Frettl oh Dateitypen Zeichenkodier. Textkodierungen Ein-/Ausgabe-umleitung

Unix-Praktikum

Dirk Frettloh

Dateitypen

Zeichenkodier.

Textkodierungen

Ein-/Ausgabe-umleitung

Grundidee

Anwendungen

Ein-/Ausgabe-weiterleitung

Grundidee

Anwendungen

Weitere Kommandos

Ausblick

DateitypenASCII-Tabelle

Binärdatei:

alle beliebigen 256 Werte

(Tabelle: 16x16 = 256 Werte)

American Standard Code for Information Interchange

Textdatei:

nur die druckbaren Bytes

7 / 35

Page 8: Vorlesung Unix-Praktikum - 3. Dateitypen und Ein ...frettloe/teach/unix/unix03.pdf · Unix-Praktikum Dirk Frettl oh Dateitypen Zeichenkodier. Textkodierungen Ein-/Ausgabe-umleitung

Unix-Praktikum

Dirk Frettloh

Dateitypen

Zeichenkodier.

Textkodierungen

Ein-/Ausgabe-umleitung

Grundidee

Anwendungen

Ein-/Ausgabe-weiterleitung

Grundidee

Anwendungen

Weitere Kommandos

Ausblick

DateitypenUTF-8-Kodierung

UTF−8: Moderne Zeichenkodierung mit bis zu 4 Bytes

... weitere UTF−8 − Zeichen...

I 7-Bit-ASCII ist gultiges UTF-8I (z.B. binar 0110 0101 = 65h = “e”)

I Achtes Bit =1: dann lies die nachsten Bytes.I Z.B. binar 11001000 100111110 = “H”

I oder binar 11100000 10100110 10010101 = “ ” usw.

I Theoretisch bis zu 8 Bytes, vier Billonen ZeichenI Real umgesetzt 4 Bytes, 1 114 112 Zeichen

° ® ™ ½ ¼ µ ¢ £ € ♠ ♣ Ǯ Ɖ Щ Ъ आ इ ر ذ د خ ⢚ ⢛ ⢜ ⢝ ⢞ ⢟僑 僒 僓 ⽎ 毋 ⽐ 毛

8 / 35

Page 9: Vorlesung Unix-Praktikum - 3. Dateitypen und Ein ...frettloe/teach/unix/unix03.pdf · Unix-Praktikum Dirk Frettl oh Dateitypen Zeichenkodier. Textkodierungen Ein-/Ausgabe-umleitung

Unix-Praktikum

Dirk Frettloh

Dateitypen

Zeichenkodier.

Textkodierungen

Ein-/Ausgabe-umleitung

Grundidee

Anwendungen

Ein-/Ausgabe-weiterleitung

Grundidee

Anwendungen

Weitere Kommandos

Ausblick

DateitypenUTF-8-Kodierung

Sie sind

Programmiersprachen

aufgebaut.

Textdateien!keine

oder wie Binärdateien

Dokumente sindDokumente sind

Sie sind

* Binärdateien oder wie

* Programmiersprachen

aufgebaut.

keine Textdateien!

DokumenteTextdateien

9 / 35

Page 10: Vorlesung Unix-Praktikum - 3. Dateitypen und Ein ...frettloe/teach/unix/unix03.pdf · Unix-Praktikum Dirk Frettl oh Dateitypen Zeichenkodier. Textkodierungen Ein-/Ausgabe-umleitung

Unix-Praktikum

Dirk Frettloh

Dateitypen

Zeichenkodier.

Textkodierungen

Ein-/Ausgabe-umleitung

Grundidee

Anwendungen

Ein-/Ausgabe-weiterleitung

Grundidee

Anwendungen

Weitere Kommandos

Ausblick

DateitypenTexteditoren und Textverarbeitung

TextverarbeitungTexteditoren

Das seht Ihr in Wordpad!

Das steht wirklich in der Datei!

10 / 35

Page 11: Vorlesung Unix-Praktikum - 3. Dateitypen und Ein ...frettloe/teach/unix/unix03.pdf · Unix-Praktikum Dirk Frettl oh Dateitypen Zeichenkodier. Textkodierungen Ein-/Ausgabe-umleitung

Unix-Praktikum

Dirk Frettloh

Dateitypen

Zeichenkodier.

Textkodierungen

Ein-/Ausgabe-umleitung

Grundidee

Anwendungen

Ein-/Ausgabe-weiterleitung

Grundidee

Anwendungen

Weitere Kommandos

Ausblick

DateitypenBeispiele fur Textdateien

I Quellkode von Programmen (.c,.java-Dateien)

I Konfigurationsdateien (.bashrc, system.ini)

I Shellskripte (skript.bash, skript.bat)

I Ein-/Ausgaben von Kommandozeilen-Programmen

Wir arbeiten fast ausschließlich mit Textdateien.

Bitte fur Programmcode, Shellskripte... nie Office-Programmebenutzen.

Texteditoren: nano, emacs, vim, gedit... (fur alles)Notepad++, Eclipse... (speziell zum Programmieren)

11 / 35

Page 12: Vorlesung Unix-Praktikum - 3. Dateitypen und Ein ...frettloe/teach/unix/unix03.pdf · Unix-Praktikum Dirk Frettl oh Dateitypen Zeichenkodier. Textkodierungen Ein-/Ausgabe-umleitung

Unix-Praktikum

Dirk Frettloh

Dateitypen

Zeichenkodier.

Textkodierungen

Ein-/Ausgabe-umleitung

Grundidee

Anwendungen

Ein-/Ausgabe-weiterleitung

Grundidee

Anwendungen

Weitere Kommandos

Ausblick

DateitypenTextdateien betrachten

more

I Anzeigen, Blattern, Suchen in Textdateien

$ more textdatei

[Leertaste] eine Seite nach untenb eine Seite nach oben

[Return] eine Zeile nach unteny eine Zeile nach oben

/suchbegriff nach einem Begriff suchenn Suche fortsetzen

h eingebaute Hilfe zu more

12 / 35

Page 13: Vorlesung Unix-Praktikum - 3. Dateitypen und Ein ...frettloe/teach/unix/unix03.pdf · Unix-Praktikum Dirk Frettl oh Dateitypen Zeichenkodier. Textkodierungen Ein-/Ausgabe-umleitung

Unix-Praktikum

Dirk Frettloh

Dateitypen

Zeichenkodier.

Textkodierungen

Ein-/Ausgabe-umleitung

Grundidee

Anwendungen

Ein-/Ausgabe-weiterleitung

Grundidee

Anwendungen

Weitere Kommandos

Ausblick

Ein-/AusgabeumleitungBeispiel: Interaktive Nutzung eines Programms

bc (basic calculator)

I ein Kommandozeilen - Taschenrechner

$ bc

4 + 7

11

9 * 3

27

quit

13 / 35

Page 14: Vorlesung Unix-Praktikum - 3. Dateitypen und Ein ...frettloe/teach/unix/unix03.pdf · Unix-Praktikum Dirk Frettl oh Dateitypen Zeichenkodier. Textkodierungen Ein-/Ausgabe-umleitung

Unix-Praktikum

Dirk Frettloh

Dateitypen

Zeichenkodier.

Textkodierungen

Ein-/Ausgabe-umleitung

Grundidee

Anwendungen

Ein-/Ausgabe-weiterleitung

Grundidee

Anwendungen

Weitere Kommandos

Ausblick

Ein-/AusgabeumleitungGrundidee

Eingabe> Programm

Ausgabe

Ein- und Ausgabe sind Text

I Tastatur und Monitor durch Textdateien ersetzen

14 / 35

Page 15: Vorlesung Unix-Praktikum - 3. Dateitypen und Ein ...frettloe/teach/unix/unix03.pdf · Unix-Praktikum Dirk Frettl oh Dateitypen Zeichenkodier. Textkodierungen Ein-/Ausgabe-umleitung

Unix-Praktikum

Dirk Frettloh

Dateitypen

Zeichenkodier.

Textkodierungen

Ein-/Ausgabe-umleitung

Grundidee

Anwendungen

Ein-/Ausgabe-weiterleitung

Grundidee

Anwendungen

Weitere Kommandos

Ausblick

Ein-/AusgabeumleitungBeispiel: Eingabeumleitung

4+7

9*3quit

bc eingabe.txt

11

27

<

Zeichen für Eingabeumleitung!

$

15 / 35

Page 16: Vorlesung Unix-Praktikum - 3. Dateitypen und Ein ...frettloe/teach/unix/unix03.pdf · Unix-Praktikum Dirk Frettl oh Dateitypen Zeichenkodier. Textkodierungen Ein-/Ausgabe-umleitung

Unix-Praktikum

Dirk Frettloh

Dateitypen

Zeichenkodier.

Textkodierungen

Ein-/Ausgabe-umleitung

Grundidee

Anwendungen

Ein-/Ausgabe-weiterleitung

Grundidee

Anwendungen

Weitere Kommandos

Ausblick

Ein-/AusgabeumleitungBeispiel: Ausgabeumleitung

11

27

4+7

9*3

>

Zeichen für Ausgabeumleitung!

bc ausgabe.txt

quit

$

Falls in ausgabe.txt schon etwas steht:

> loscht alten Inhalt>> hangt an alten Inhalt an

16 / 35

Page 17: Vorlesung Unix-Praktikum - 3. Dateitypen und Ein ...frettloe/teach/unix/unix03.pdf · Unix-Praktikum Dirk Frettl oh Dateitypen Zeichenkodier. Textkodierungen Ein-/Ausgabe-umleitung

Unix-Praktikum

Dirk Frettloh

Dateitypen

Zeichenkodier.

Textkodierungen

Ein-/Ausgabe-umleitung

Grundidee

Anwendungen

Ein-/Ausgabe-weiterleitung

Grundidee

Anwendungen

Weitere Kommandos

Ausblick

Ein-/AusgabeumleitungBeispiel: beides gleichzeitig

bc eingabe.txt ausgabe.txt

11

274+7

9*3quit

< >$

17 / 35

Page 18: Vorlesung Unix-Praktikum - 3. Dateitypen und Ein ...frettloe/teach/unix/unix03.pdf · Unix-Praktikum Dirk Frettl oh Dateitypen Zeichenkodier. Textkodierungen Ein-/Ausgabe-umleitung

Unix-Praktikum

Dirk Frettloh

Dateitypen

Zeichenkodier.

Textkodierungen

Ein-/Ausgabe-umleitung

Grundidee

Anwendungen

Ein-/Ausgabe-weiterleitung

Grundidee

Anwendungen

Weitere Kommandos

Ausblick

Ein-/AusgabeumleitungTextdateien zeilenweise sortieren

sort

$ sort planeten.txt

I sortiert alphabetisch nach der ersten Spalte

$ sort -k 2 planeten.txt

I sortiert alphabetisch nach der zweiten Spalte

$ sort -k 2 -n planeten.txt

I sortiert numerisch nach der zweiten Spalte

18 / 35

Page 19: Vorlesung Unix-Praktikum - 3. Dateitypen und Ein ...frettloe/teach/unix/unix03.pdf · Unix-Praktikum Dirk Frettl oh Dateitypen Zeichenkodier. Textkodierungen Ein-/Ausgabe-umleitung

Unix-Praktikum

Dirk Frettloh

Dateitypen

Zeichenkodier.

Textkodierungen

Ein-/Ausgabe-umleitung

Grundidee

Anwendungen

Ein-/Ausgabe-weiterleitung

Grundidee

Anwendungen

Weitere Kommandos

Ausblick

Ein-/AusgabeumleitungVerzeichnislisting nach Große sortieren

$ ls -l > zwischen.txt

$ sort -k 5 -n zwischen.txt > sort.txt

$ more sort.txt

$ rm zwischen.txt sort.txt

I das Hantieren mit temporaren Dateien ist lastig!

19 / 35

Page 20: Vorlesung Unix-Praktikum - 3. Dateitypen und Ein ...frettloe/teach/unix/unix03.pdf · Unix-Praktikum Dirk Frettl oh Dateitypen Zeichenkodier. Textkodierungen Ein-/Ausgabe-umleitung

Unix-Praktikum

Dirk Frettloh

Dateitypen

Zeichenkodier.

Textkodierungen

Ein-/Ausgabe-umleitung

Grundidee

Anwendungen

Ein-/Ausgabe-weiterleitung

Grundidee

Anwendungen

Weitere Kommandos

Ausblick

Ein-/AusgabeweiterleitungGrundidee: Verketten von Programmen

Ausgabe

Eingabe

Programm

Programm

...

Programm 1

2

n

20 / 35

Page 21: Vorlesung Unix-Praktikum - 3. Dateitypen und Ein ...frettloe/teach/unix/unix03.pdf · Unix-Praktikum Dirk Frettl oh Dateitypen Zeichenkodier. Textkodierungen Ein-/Ausgabe-umleitung

Unix-Praktikum

Dirk Frettloh

Dateitypen

Zeichenkodier.

Textkodierungen

Ein-/Ausgabe-umleitung

Grundidee

Anwendungen

Ein-/Ausgabe-weiterleitung

Grundidee

Anwendungen

Weitere Kommandos

Ausblick

Ein-/AusgabeweiterleitungAnwendung auf das Sortierproblem

Das “Pipe”-Symbol | verbindet die Programme:

$ ls -l | sort -k 5 -n | more

• Ausgabe des links von | stehenden Programms

• wird Eingabe des rechts von | stehenden Programms

I deutlich effizienter als Zwischenspeichern!

21 / 35

Page 22: Vorlesung Unix-Praktikum - 3. Dateitypen und Ein ...frettloe/teach/unix/unix03.pdf · Unix-Praktikum Dirk Frettl oh Dateitypen Zeichenkodier. Textkodierungen Ein-/Ausgabe-umleitung

Unix-Praktikum

Dirk Frettloh

Dateitypen

Zeichenkodier.

Textkodierungen

Ein-/Ausgabe-umleitung

Grundidee

Anwendungen

Ein-/Ausgabe-weiterleitung

Grundidee

Anwendungen

Weitere Kommandos

Ausblick

Kommandos zum Bearbeiten von TextdateienTextdateien zusammenfugen

cat (concatenate files)

$ cat eins.txt zwei.txt drei.txt

I gibt den Inhalt der Dateien nacheinander aus.

$ cat eins.txt zwei.txt drei.txt >sammlung.txt

I Ergebnis in neuer Datei speichern.

$ cat eins.txt

I Nutzlicher Spezialfall: Eine kurze Datei anschauen

22 / 35

Page 23: Vorlesung Unix-Praktikum - 3. Dateitypen und Ein ...frettloe/teach/unix/unix03.pdf · Unix-Praktikum Dirk Frettl oh Dateitypen Zeichenkodier. Textkodierungen Ein-/Ausgabe-umleitung

Unix-Praktikum

Dirk Frettloh

Dateitypen

Zeichenkodier.

Textkodierungen

Ein-/Ausgabe-umleitung

Grundidee

Anwendungen

Ein-/Ausgabe-weiterleitung

Grundidee

Anwendungen

Weitere Kommandos

Ausblick

Kommandos zum Bearbeiten von TextdateienTextdateien zeilenweise vergleichen

diff (show difference between files)

$ diff links.txt rechts.txt

Entziffern der Ausgabe von diff:

ncm: Die nachfolgenden Zeilen wurden verandert.<: ursprunglicher Text war in Zeile n in links.txt>: veranderter Text ist in Zeile m in rechts.txt

8c9

< ac turpis egestas. In imperdiet porta elit.

−−−> ac turpis egestas. In imperdiet magna elit.

23 / 35

Page 24: Vorlesung Unix-Praktikum - 3. Dateitypen und Ein ...frettloe/teach/unix/unix03.pdf · Unix-Praktikum Dirk Frettl oh Dateitypen Zeichenkodier. Textkodierungen Ein-/Ausgabe-umleitung

Unix-Praktikum

Dirk Frettloh

Dateitypen

Zeichenkodier.

Textkodierungen

Ein-/Ausgabe-umleitung

Grundidee

Anwendungen

Ein-/Ausgabe-weiterleitung

Grundidee

Anwendungen

Weitere Kommandos

Ausblick

Kommandos zum Bearbeiten von TextdateienTextdateien zeilenweise vergleichen (Forts.)

nam: in der Datei rechts.txt hinzugefugte Zeilen

3a4

$ nisi vulputate euismod sollicitudin, dolor quis

ndm: in der Datei rechts.txt geloschte Zeilen

19d19

< fringilla facilisis nisi. Proin id lorem a ipsum

24 / 35

Page 25: Vorlesung Unix-Praktikum - 3. Dateitypen und Ein ...frettloe/teach/unix/unix03.pdf · Unix-Praktikum Dirk Frettl oh Dateitypen Zeichenkodier. Textkodierungen Ein-/Ausgabe-umleitung

Unix-Praktikum

Dirk Frettloh

Dateitypen

Zeichenkodier.

Textkodierungen

Ein-/Ausgabe-umleitung

Grundidee

Anwendungen

Ein-/Ausgabe-weiterleitung

Grundidee

Anwendungen

Weitere Kommandos

Ausblick

Kommandos zum Bearbeiten von TextdateienAnfang einer Datei ausgeben

head (show head of file)

$ head -3 liste.txt

I zeigt die ersten 3 Zeilen einer Datei.

25 / 35

Page 26: Vorlesung Unix-Praktikum - 3. Dateitypen und Ein ...frettloe/teach/unix/unix03.pdf · Unix-Praktikum Dirk Frettl oh Dateitypen Zeichenkodier. Textkodierungen Ein-/Ausgabe-umleitung

Unix-Praktikum

Dirk Frettloh

Dateitypen

Zeichenkodier.

Textkodierungen

Ein-/Ausgabe-umleitung

Grundidee

Anwendungen

Ein-/Ausgabe-weiterleitung

Grundidee

Anwendungen

Weitere Kommandos

Ausblick

Kommandos zum Bearbeiten von TextdateienEnde einer Datei ausgeben

tail (show tail of file)

$ tail -4 liste.txt

I zeigt die letzten 4 Zeilen einer Datei.

$ tail -n +7 liste.txt

I zeigt alle Zeilen ab der 7ten Zeile(bzw. unterdruckt die Zeilen 1 bis 6)

26 / 35

Page 27: Vorlesung Unix-Praktikum - 3. Dateitypen und Ein ...frettloe/teach/unix/unix03.pdf · Unix-Praktikum Dirk Frettl oh Dateitypen Zeichenkodier. Textkodierungen Ein-/Ausgabe-umleitung

Unix-Praktikum

Dirk Frettloh

Dateitypen

Zeichenkodier.

Textkodierungen

Ein-/Ausgabe-umleitung

Grundidee

Anwendungen

Ein-/Ausgabe-weiterleitung

Grundidee

Anwendungen

Weitere Kommandos

Ausblick

Kommandos zum Bearbeiten von TextdateienZusammenfassendes komplexes Beispiel

Aufgabe: Planeten-Tabelle mit Uberschrift sortieren

$ sort planeten2.txt

I klappt nicht wegen der Uberschrift

Ansatz: Uberschrift mit tail abschneiden

$ tail -n +3 planeten2.txt | sort

I besser, aber Uberschrift fehlt jetzt

27 / 35

Page 28: Vorlesung Unix-Praktikum - 3. Dateitypen und Ein ...frettloe/teach/unix/unix03.pdf · Unix-Praktikum Dirk Frettl oh Dateitypen Zeichenkodier. Textkodierungen Ein-/Ausgabe-umleitung

Unix-Praktikum

Dirk Frettloh

Dateitypen

Zeichenkodier.

Textkodierungen

Ein-/Ausgabe-umleitung

Grundidee

Anwendungen

Ein-/Ausgabe-weiterleitung

Grundidee

Anwendungen

Weitere Kommandos

Ausblick

Kommandos zum Bearbeiten von TextdateienZusammenfassendes komplexes Beispiel

Uberschrift erhalt man mit head:

$ head -2 planeten2.txt

Alles zusammenfugen:

$ head -2 planeten2.txt > teil1.txt

$ tail -n +3 planeten2.txt | sort > teil2.txt

$ cat teil1.txt teil2.txt > sortiert.txt

$ rm teil1.txt teil2.txt

I aber es entstehen wieder die unschonen Zwischendateien!

28 / 35

Page 29: Vorlesung Unix-Praktikum - 3. Dateitypen und Ein ...frettloe/teach/unix/unix03.pdf · Unix-Praktikum Dirk Frettl oh Dateitypen Zeichenkodier. Textkodierungen Ein-/Ausgabe-umleitung

Unix-Praktikum

Dirk Frettloh

Dateitypen

Zeichenkodier.

Textkodierungen

Ein-/Ausgabe-umleitung

Grundidee

Anwendungen

Ein-/Ausgabe-weiterleitung

Grundidee

Anwendungen

Weitere Kommandos

Ausblick

Kommandos zum Bearbeiten von TextdateienZusammenfassendes komplexes Beispiel

Es geht auch ohne Zwischendateien:

$ head -2 planeten2.txt; tail -n +3 planeten2.txt | sort

Semikolon trennt Aufrufe

I man kann mehr als ein Programm pro Zeile ausfuhren

I Ausfuhrung von links nach rechts

I Ausgaben werden aneinandergehangt

29 / 35

Page 30: Vorlesung Unix-Praktikum - 3. Dateitypen und Ein ...frettloe/teach/unix/unix03.pdf · Unix-Praktikum Dirk Frettl oh Dateitypen Zeichenkodier. Textkodierungen Ein-/Ausgabe-umleitung

Unix-Praktikum

Dirk Frettloh

Dateitypen

Zeichenkodier.

Textkodierungen

Ein-/Ausgabe-umleitung

Grundidee

Anwendungen

Ein-/Ausgabe-weiterleitung

Grundidee

Anwendungen

Weitere Kommandos

Ausblick

Kommandos zum Bearbeiten von TextdateienAusgabeumleitung des Ergebnisses

$ head -2 planeten2.txt; tail -n +3 planeten2.txt | sort

> ergebnis.txt

I liefert nicht das Gewunschte:nur die Ausgabe von tail wird umgeleitet

Losung:

$ (head -2 planeten2.txt; tail -n +3 planeten2.txt | sort)

> ergebnis.txt

I gesamten Ausdruck in runden Klammern ausfuhren,dessen Ausgabe umgeleitet werden soll

30 / 35

Page 31: Vorlesung Unix-Praktikum - 3. Dateitypen und Ein ...frettloe/teach/unix/unix03.pdf · Unix-Praktikum Dirk Frettl oh Dateitypen Zeichenkodier. Textkodierungen Ein-/Ausgabe-umleitung

Unix-Praktikum

Dirk Frettloh

Dateitypen

Zeichenkodier.

Textkodierungen

Ein-/Ausgabe-umleitung

Grundidee

Anwendungen

Ein-/Ausgabe-weiterleitung

Grundidee

Anwendungen

Weitere Kommandos

Ausblick

Kommandos zum Bearbeiten von TextdateienTexte in Dateien suchen

grep (global regular expression print)

$ grep datei *.txt

drei.txt:3 dritte Textdatei

eins.txt:1 erste Textdatei

...

Durchsucht alle Dateien mit der Endung *.txt,ob sie den Text “datei” enthalten.

Falls Groß-/Kleinschreibung (Datei/datei) egal sein soll:

grep -i datei *.txt

31 / 35

Page 32: Vorlesung Unix-Praktikum - 3. Dateitypen und Ein ...frettloe/teach/unix/unix03.pdf · Unix-Praktikum Dirk Frettl oh Dateitypen Zeichenkodier. Textkodierungen Ein-/Ausgabe-umleitung

Unix-Praktikum

Dirk Frettloh

Dateitypen

Zeichenkodier.

Textkodierungen

Ein-/Ausgabe-umleitung

Grundidee

Anwendungen

Ein-/Ausgabe-weiterleitung

Grundidee

Anwendungen

Weitere Kommandos

Ausblick

Kommandos zum Bearbeiten von TextdateienAusgaben mit grep filtern

Filtern von Programmausgaben mit grep:

ls -la | grep 2016

I zeigt alle Dateien mit Datum 2016

32 / 35

Page 33: Vorlesung Unix-Praktikum - 3. Dateitypen und Ein ...frettloe/teach/unix/unix03.pdf · Unix-Praktikum Dirk Frettl oh Dateitypen Zeichenkodier. Textkodierungen Ein-/Ausgabe-umleitung

Unix-Praktikum

Dirk Frettloh

Dateitypen

Zeichenkodier.

Textkodierungen

Ein-/Ausgabe-umleitung

Grundidee

Anwendungen

Ein-/Ausgabe-weiterleitung

Grundidee

Anwendungen

Weitere Kommandos

Ausblick

UberblickNeue Befehle heute

hexdump nach hexadezimal konvertierenmore Inhalt einer Datei anzeigenbc einfacher Taschenrechner>, >>, < Aus-/Eingabe umleitensort Sortieren| “Pipe”, Ausgabe des letzten Befehls als Eingabe

des nachsten Befehls nehmencat Aneinanderhangendiff Unterschied zwischen zwei Dateien anzeigenhead, tail Anfang/Ende einer Datei anzeigengrep nach Zeichenkette in Datei suchen

33 / 35

Page 34: Vorlesung Unix-Praktikum - 3. Dateitypen und Ein ...frettloe/teach/unix/unix03.pdf · Unix-Praktikum Dirk Frettl oh Dateitypen Zeichenkodier. Textkodierungen Ein-/Ausgabe-umleitung

Unix-Praktikum

Dirk Frettloh

Dateitypen

Zeichenkodier.

Textkodierungen

Ein-/Ausgabe-umleitung

Grundidee

Anwendungen

Ein-/Ausgabe-weiterleitung

Grundidee

Anwendungen

Weitere Kommandos

Ausblick

AusblickNachste Woche machen wir...

I Dateiverwaltung

I Shell konfigurieren

I Aliase

I einfache Shellskripte

34 / 35

Page 35: Vorlesung Unix-Praktikum - 3. Dateitypen und Ein ...frettloe/teach/unix/unix03.pdf · Unix-Praktikum Dirk Frettl oh Dateitypen Zeichenkodier. Textkodierungen Ein-/Ausgabe-umleitung

Unix-Praktikum

Dirk Frettloh

Dateitypen

Zeichenkodier.

Textkodierungen

Ein-/Ausgabe-umleitung

Grundidee

Anwendungen

Ein-/Ausgabe-weiterleitung

Grundidee

Anwendungen

Weitere Kommandos

Ausblick

Ende der heutigen Vorlesung

Vielen Dank furs Zuhoren!

Bis nachste Woche!

35 / 35