01.03.2014 Aufrufe

Verwendung von grep awk-Programmierung

Verwendung von grep awk-Programmierung

Verwendung von grep awk-Programmierung

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

Unix für Entwickler Praktikum 4<br />

wurden, nicht zurückscrollen, um die Spaltenüberschriften nochmal zu sehen. Schreiben<br />

Sie sich dazu eine eigene <strong>awk</strong>-Funktion mit passendem Namen und rufen Sie diese<br />

Funktion an den entsprechenden Stellen auf.<br />

3. Erweitern Sie ihr vorheriges Programm so, dass alle 30 Zeilen die Header erneut<br />

ausgegeben werden, bevor die nächste Zeile in der Ausgabe erscheint.<br />

4. Benutzen Sie die <strong>von</strong> <strong>awk</strong>(1) zur Verfügung gestellten Variablen, um am Schluss eine<br />

Zusammenfassung der Datei auszugeben. Geben Sie dazu den Dateinamen und die<br />

Anzahl Zeilen in der Datei aus.<br />

5. In <strong>awk</strong>(1) steht beschrieben, wie man statt des Leerzeichens/Tabulators als Feldtrenner<br />

einen eigenen Feldtrenner angeben kann. Nutzen Sie diesen, um die Trennzeichen<br />

(,) zwischen den einzelnen Datensätzen zu entfernen und die Datei nun sauber formatiert<br />

im Spaltenformat auszugeben.<br />

6. Gehen Sie nun mehr auf den Inhalt der Datei ein. Ermitteln Sie mit <strong>awk</strong> im einzelnen:<br />

• Wieviele Einwohner haben alle Hauptstädte insgesamt?<br />

• Was ist die mittlere Grösse aller Hauptstädte und welche Stadt kommt dieser<br />

Zahl am nächsten?<br />

• Wie heisst die Stadt mit der grössten/kleinsten Einwohnerzahl?<br />

• Welcher Kontinent hat die meisten Hauptstädte?<br />

• Wieviele Einwohner haben die Hauptstädte jedes Kontinents jeweils?<br />

Schreiben Sie für jede Abfrage ein eigenes <strong>awk</strong>-Skript.<br />

7. Das Programm uptime zeigt (neben anderen Informationen) die Anzahl der Tage an,<br />

die das System bereits läuft. Zeigen Sie nur die Anzahl der Tage an, indem sie a) ein<br />

<strong>awk</strong>-Kommando benutzen und b) den cut-Befehl.<br />

Teil III<br />

Shellskripte mit <strong>grep</strong> und <strong>awk</strong><br />

Nutzen Sie in diesem Teil Shellskripte, in denen <strong>grep</strong> und <strong>awk</strong> enthalten sind, um die<br />

folgenden Aufgaben zu lösen.<br />

1. Aufgabe: Freitag der 13. gilt bei abergläubischen Menschen als Unglückstag 2 . Egal,<br />

ob Sie daran glauben oder nicht, Sie sollen folgendes ermitteln: geben Sie für die<br />

nächsten 50 Jahre alle Jahre und die dazugehörigen Monate aus, in denen der 13.<br />

eines Monats auf einen Freitag fällt. Geben Sie diese Daten n tabellarischer Form<br />

aus. Einen Kalender erhalten Sie über das Programm cal bzw. ncal.<br />

2. Aufgabe: Susi Sonnenschein freut sich auf Ihren 18. Geburtstag am 1. Mai 2013, denn<br />

dann darf Sie das erste Mal Blut spenden. Sie hat sich vorher gründlich informiert<br />

und weiss über die Blutspende folgende Fakten:<br />

2 Zu den Details siehe: http://de.wikipedia.org/wiki/Freitag,_der_13.<br />

Seite 2 <strong>von</strong> 3

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!