Dr. Andreas Borchert Abteilung Angewandte
Informationsverarbeitung 27. Mai 2003
Christian Ehrhardt Blatt 5
Systemnahe Software (SS 2003)
Abgabetermin 3.Juni 2003
Das Programm diff kann zwei Dateien vergleichen und die
Unterschiede in einer sowohl für Menschen als auch für andere
Programme lesbaren Form ausgeben. Eine solche Beschreibung von
Unterschieden zwischen zwei Dateien wird häufig auch Patch
genannt.
Das Programm patch kann einen solchen Patch wieder verwenden,
um eine Kopie der erste Datei so zu verändern, daß sie anschließend wie
die zweite aussieht. Dazu liest patch die Unterschiede von der
Standardeingabe.
Solche Patches werden häufig verwendet, um die Unterschiede
zwischen zwei Versionen eines Programms zu veröffentlichen. Ist
jemand dann bereits im Besitz der ersten Version, so wird für die
zweite Version nur noch der Patch und nicht der vollständige
Quelltext benötigt.
In diesem Blatt soll ein Programm geschrieben werden, dem auf
der Kommandozeile eine Liste von Dateinamen übergeben wird.
- Wenn der Dateiname mit dem Text ``patch.'' beginnt, dann soll das
Programm patch mit dieser Datei aufgerufen werden. Dadurch
können sich andere Dateien verändern. Zu beachten ist, daß das
Programm patch versucht, den Patch von der Standardeingabe
zu lesen.
- Wenn der Dateiname nicht mit dem Text ``patch.'' beginnt
soll das Programm davon ausgehen, daß es sich um ein C-Programm
handelt, das übersetzt werden soll. Es wird also gcc
aufgerufen.
Sämtliche Bildschirmausgaben, die von den Programmen patch und
gcc produziert werden, sollen in eine Datei umgeleitet werden.
Christian Ehrhardt
2003-05-27