diff: Syntax und Beispiele

diff1) vergleicht zwei oder mehrere Textdateien miteinander und zeigt die Unterschiede an. Wenn Sie zB eine Systemeinstellung in der GUI verändern und zwar die Konfigurationsdatei wissen, in welche diese Einstellung geschrieben wird aber nicht genau wissen wo, dann können Sie diff zu Hilfe nehmen. Machen Sie eine Kopie der betroffenen Datei und im Anschluss daran ändern Sie die Einstellung. Das kann zB nur eine Checkbox sein, die aktiviert bzw. deaktiviert wird. Im folgenden Beispiel wurde in Mac OSX in den Systemeinstellungen → »Sicherheit« die Checkbox »Kennwortabfrage für die Freigabe jeder geschützten Systemeinstellung« aktiviert. Diese Einstellung wird in die Datei »/etc/authorization« geschrieben. Die Dateien vor und nach der Änderungen werden verglichen:

$ diff authorization authorization.orig  
1049c1049
 < 			<true/>
 ---
 > 			<false/>

Die erste Zeile »1049c1049« sagt aus, dass die Zeile 1049 Unterschiede aufweisen (c = change). Die darauf folgende Ausgabe zeigt auch den Unterschied dieser Zeile an. Eine sich öffnende spitze Klammer (<) zeigt die Datei authorization, und die sich schließende spitze Klammer bezieht sich auf authorization.orig.

Eine weitere Ausgabe auf die Sie stoßen können:

$ diff alm.log alm.log.1   
13a14
 > 2010-08-31 08:47:37 [1778] ALM: _info_: Query Feature Acrobat_Distiller (version = 9.0) Failed (status = -73)

Hier sagt die Ausgabe aus, dass Sie die angegebene Zeile in die Datei alm.log nach Zeile 13 einfügen müssten, damit sie identisch ist mit Datei alm.log.1 (a = append = hinzugefügt). Im Umkehrschluss können Sie die Reihenfolge natürlich auch umdrehen, dann würde angezeigt werden, dass Sie Zeile 14 in der Datei alm.log.1 löschen müssten (d = delete), damit sie identisch wäre, mit der Datei alm.log:

$ diff alm.log.1 alm.log  
14d13
 < 2010-08-31 08:47:37 [1778] ALM: _info_: Query Feature Acrobat_Distiller (version = 9.0) Failed (status = -73)



pronto 2010/09/03 00:10