Beispiel-Skripte

PreviousUpNext

Im Folgenden werden Beispiel-Skripte vorgestellt, um zu zeigen wie Beyond Compare Skripte verwendet.  Sie können diese Skripte entweder so verwenden, wie sie hier aufgeführt sind, oder sich eigene daraus erstellen.

Hier ist ein grundlegendes Skript, welches alle neueren Dateien und Datei-Singles, unter Verwendung einer zuvor erstellten Sitzung, von einem Ordner in einen anderen Ordner kopiert:

 load "Laptop Synchro"

 sync update:left->right

 

Zwei Ordner synchronisieren

Hierbei handelt es sich um ein fortgeschritteneres Skript, welches zwei bestimmte Ordner, unter Verwendung von fortgeschrittenen Filtern, synchronisiert.  Dies funktioniert genauso, als ob die Ordner in eine Ordnervergleichssitzung geladen werden und eine "Nach rechts spiegeln"-Synchronisation ausgeführt wird.

# Log-Meldungen einschalten.

log normal "C:\Mein Log.txt"

# Die Standardsitzung laden, und alle Dateien ausschließen, außer bestimmte Dateitypen.

load <default>

filter "*.html;*.htm;*.png;*.jpg"

# Die Basisordner laden.

load "C:\Mein Ordner" ftp://Benutzer@Webseite.com/Ordner

# Unterschiedliche Dateien von links nach rechts kopieren, rechtsseitige Singles löschen.

sync mirror:left->right

 

Zwei Dateien nach Namen vergleichen

Dieses Skript vergleicht zwei Dateien nach Namen.

file-report layout:side-by-side &

 options:display-mismatches &

 output-to:%3 %1 %2

 

Eine beispielhafte Befehlszeile, die das obige Skript aufruft:

BCompare.exe @"Mein Skript.txt" "Meine Datei.txt" "Deine Datei.txt" "Mein Bericht.txt"

 

Hinweis:  ein "kaufmännisches Und" (&) am Ende der Zeile bedeutet, dass der Befehl auf der nächsten Zeile fortgesetzt wird.

Hinweis:  %1, %2 und %3 beziehen sich auf den 1., 2. bzw. 3. Befehlszeilenparameter.

Einen Bericht generieren

Dieses Skript vergleicht zwei Dateien nach Namen und erstellt einen HTML-Bericht, der Unterschiede im Kontext zeigt:

text-report layout:side-by-side &

 options:ignore-unimportant,display-context &

 output-to:%3 output-options:html-color %1 %2

 

Eine Website synchron halten

Dieses Skript hält eine Website synchron mit Entwicklungsdateien.

# Ausführliches Protokollieren einschalten.

log verbose append:"C:\Mein Log.txt"

# Vergleichskriterien einstellen.

criteria timestamp size

# Quell- und Zielordner laden.

load "C:\Mein Ordner" ftp://Benutzer@Webseite.com/Ordner

# Filter zum Einbeziehen von lediglich Quelldateien, CVS-Unterordner ignorieren.

filter "*.htm;*.html;*.php;*.jpg;*.gif;-CVS\"

# Die lokalen Dateien mit der Website synchronisieren, leere Ordner erstellen.

sync create-empty mirror:left->right

 

Einen regelbasierten Vergleich durchführen, und die Ergebnisse in eine Datei schreiben

Dieses Skript schreibt die Ergebnisse des Skripts in eine Datei, wobei das aktuelle Datum als Teil des Dateinamens verwendet wird.  Die Variable %date% wird durch das Skript in das Datum aufgelöst.  Auf U.S.-Englisch-Systemen in das Format 2012-10-13; auf anderen Systemen in das entsprechende Länderformat.  Es führt einen regelbasierten Vergleich von Pascal-Quellcode aus und generiert einen Textbericht der Unterschiede.

# Logging in eine Datei in der Form "C:\Mein Log 2012-12-31.txt".

# Das exakte Format hängt von Ihren Länder- und Spracheinstellungen ab.

log verbose append:"C:\Mein Log %date%.txt"

# Den Textinhalt der Dateien vergleichen.

criteria rules-based

# Nur Delphi-Quellen vergleichen, Archiv-Ordner ignorieren.

filter "*.pas;*.dfm;*.dpr;*.inc;-archive\"

load "C:\Mein Ordner" "C:\Dein Ordner"

folder-report layout:summary &

 options:display-mismatches,column-attributes,column-timestamp,column-size &

 output-to:"Mein Bericht.txt"

 

Aktuellen Ordnerzustand mit Schnappschuss vergleichen

Dieses Skript vergleicht den aktuellen Zustand eines Ordners mit einem zuletzt erstellten Schnappschuss.  Anschließend kopiert es die Änderungen und neuen Dateien in eine Archivdatei und aktualisiert den Schnappschuss des Ordners.

option confirm:yes-to-all

# Mittels CRC vergleichen.

criteria crc

# Aktuelle Dateien neben letztem Schnappschuss laden.

load "C:\Mein Ordner" "C:\Mein Schnappschuss.bcss"

# Aufklappen zum Einbeziehen der Unterordner und der Dateien.

expand all

# Aktualisierte Dateien auswählen.

select left.diff.files left.orphan.files

# Änderungen in eine Archivdatei kopieren.

copyto left path:relative "C:\Mein Archiv.zip"

# Den Schnappschuss aktualisieren.

snapshot save-crc left output:"C:\Mein Schnappschuss.bcss"

 

Einen Bericht mit Unterschieden generieren

Dieses Skript generiert einen Bericht, der nur Unterschiede nennt.

# Grundlegende Vergleichseigenschaften einstellen.

criteria timestamp:2sec

# Log-Dateien herausfiltern.

filter "-*.log"

# Ersten Vergleich laden.

load "C:\Mein Ordner" "C:\Dein Ordner"

# Dateien mit Unterschieden beim Datumsstempel vergleichen.

select newer.files older.files

# Einen Bericht der Unterschiede generieren.

folder-report layout:summary options:display-mismatches output-to:"C:\Mein Bericht.txt"