Dieser Befehl kopiert eine oder mehrere Dateien.
Als Quelldatei kann eine spezifische Datei bzw. eine Dateigruppe (per Platzhalter und Wildcards: * oder ?) angegeben werden. Wird kein Pfad angegeben, wird das aktuelle Verzeichnis (siehe [AktPfad]) als Quelle angenommen. Es können auch mehrere Dateien bzw. Dateigruppen mit Semikolons getrennt angegeben werden. Ist in einer Angabe kein Pfad enthalten, wird der zuvor gültige Pfad verwendet.
Beispiele:
Quellangabe | kopiert |
*.exe; *.dll | alle EXE- und DLL-Dateien aus dem aktuellen Verzeichnis |
C:\Test.txt; *.lst | C:\Test.txt und alle LST-Dateien von C:\ |
C:\Test.txt; *.lst; D:\Test1.TXT | C:\Test.txt, C:\*.lst und D:\Test1.TXT |
C:\Test.txt; D:\Test1.TXT | C:\Test.txt und D:\Test1.TXT |
Werden auf diese Weise mehrere Quelldateien angegeben, darf als Ziel nur ein Verzeichnis angegeben werden (ohne Angabe des Zieldateinamens).
Außerdem stehen spezielle Optionen zur Verfügung, die den Kopiervorgang beeinflussen.
Folgende Optionen stehen zur Verfügung:
- Dateien verschieben (Quelldatei nach dem Kopieren löschen)
Hinweis: Diese Funktion kopiert die Datei und löscht am Ende die Quelldatei. Das Verschieben ist daher zwar langsamer, jedoch auch sicher und verwendet die selben Mechanismen wie das Kopieren, um eine volle Kontrolle über den Vorgang zu behalten. Ein unmittelbares Verschieben einer Datei ohne diese Mechanismen, dafür in maximaler Geschwindigkeit, kann durch Zuweisen eines neuen Namens bzw. Pfades in [cX.Datei.Name] erfolgen.
- FG Erstellungsdatum der Quelldatei in Zieldatei übernehmen
- Auch die Dateien aus vorhandenen Unterverzeichnissen kopieren
- bereits vorhandene Dateien nicht überschreiben
- nur neue Dateien kopieren (die im Ziel noch nicht existieren)
- nur veränderte Dateien kopieren (Archiv-Bit muss gesetzt sein; wird zurückgesetzt)
- FG nur Dateien, die ab dem angegebenen Datum verändert wurden
- FG auch versteckte Dateien kopieren (mit Hidden-Attribut)
- FG es können Ausnahmen definiert werden, indem eine oder mehrere Dateimasken im entsprechenden Feld eingegeben werden (Beispiel: "*.BAK;*.TMP" kopiert keine BAK- und TMP-Dateien)
- FG die Datei kann auch direkt komprimiert bzw. dekomprimiert werden (Lizenz für Kompressions-PlugIn erforderlich)
FG Zusätzlich kann die Statusanzeige für den Kopiervorgang definiert werden, indem der Statustext und/oder der anzuzeigende Prozentsatz eingetragen wird.
Wird die Option Aktuelle Datei in Status anzeigen angekreuzt, wird die gerade kopierte Datei im Statusfenster angezeigt.
Optional kann das Kopieren programmgesteuert überwacht werden. Hierzu muss ein Unterprogramm namens ::KopierteDateiPrüfen existieren, welches dann pro kopierter Datei aufgerufen wird. Innerhalb dieses Unterprogramms stehen dann folgende Variablen als [cX.Datei().Kopieren.X] zu Verfügung:
.Abbrechen Wird diese Variable auf 1 gesetzt, wird der Kopiervorgang abgebrochen
.Ablehnen Wird diese Variable im pro Datei aufgerufenenen Unterprogramm auf 1 gesetzt, wird die aktuelle Datei nicht kopiert
.Fehler Kurzbeschreibung des zuletzt bei einem Kopiervorgang aufgetretenen Fehlers
.Index Liefert die laufende Nummer der gerade zu kopierenden Datei im Kopiervorgang
.Quelldatei Vollständiger Name der Quelldatei des Kopiervorgangs
.Zieldatei Vollständiger Name der Zieldatei des Kopiervorgangs
Nach dem erfolgreichem Kopieren einer Datei wird das Ereignis-Unterprogramm ::KopierenErfolgt aufgerufen, in dem z.B. die Zieldatei bearbeitet werden kann. Hinweis: Dieses Ereignis wird bei Verschiebeoperationen vor dem Löschen der Quelldatei aufgerufen.
Beispielskript:
Datei kopieren C:\Dokumente und Einstellungen\Eigene Dateien\*.doc => D:\Dokumenten Backup (nicht überschreiben, auch Unterverzeichnisse, Datei anzeigen, Statustext)
Beende Skript
:: KopierteDateiPrüfen Meldung "Name der aktuellen Quelldatei:¶[cX.Datei.Kopieren.QuellDatei]¶¶Name der Zieldatei:¶[cX.Datei.Kopieren.ZielDatei]¶¶" (Titel: 'Datei kopieren', 'OK') Zurück |
Das Beispielskript kopiert alle Dateien mit der Endung ".DOC" in das Verzeichnis "D:\Dokumenten Backup" (wenn das angegebene Verzeichnis noch nicht existiert, wird es automatisch angelegt). Durch die angegebene Option "Status" wird für jede Datei ein Dialog eingeblendet:
Vor jedem Kopieren einer Datei wird das Unterprogramm ::KopierteDateiPrüfen aufgerufen. In diesem Unterprogramm lassen wir uns eine Meldung ausgeben, welche uns den Namen der Quell- und Zieldatei anzeigt:
cX-Webseite: http://www.clickexe.net