
89485
08.04.2010
Unsichtbares Kopieren von Daten
Hi Leute,
ich hätte mal eine Frage:
wie kann ich bei dem Befehl xcopy (z.B. bei Backups oder normalen Kopiervorgängen) in einem Batch hinterlegen, dass ich nicht immer sehe...
Datei xyz wurde von C:\test nach D:\test kopiert...
Was ich aber noch sehen will, ist am Ende die Zeile XXX Datei(en) kopiert.
Hätte da jmd ein paar Tipps für mich?
Danke schon mal
ich hätte mal eine Frage:
wie kann ich bei dem Befehl xcopy (z.B. bei Backups oder normalen Kopiervorgängen) in einem Batch hinterlegen, dass ich nicht immer sehe...
Datei xyz wurde von C:\test nach D:\test kopiert...
Was ich aber noch sehen will, ist am Ende die Zeile XXX Datei(en) kopiert.
Hätte da jmd ein paar Tipps für mich?
Danke schon mal
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 140156
Url: https://administrator.de/forum/unsichtbares-kopieren-von-daten-140156.html
Ausgedruckt am: 22.05.2025 um 14:05 Uhr
15 Kommentare
Neuester Kommentar
Moin Batchliebhaber,
willkommen im Forum.
Batch = von Ansatz her eigentlich unbeaufsichtigter Ablauf, im Normalfall sogar ohne BenutzerInneninteraktion.
Von daher zieh ich ja noch mit beim "unsichtbar laufen lassen". Solange denn alles "zur Sicherheit" in irgendeiner Logdatei steht.
Aber "unsichtbar laufen lassen" und dann doch wieder eine vom User zu bestätigende Info hochpoppen lassen... nö.
Diskutier erst mal mit dir aus, ob du nun linksrum oder rechtsrum gehen willst, ob die Infos nun wurscht oder nicht wurscht sind, ob du nun SOFORT wissen willst, ob 45320 Dateien in 3249 Verzeichnissen kopiert wurden oder ob du es bei Bedarf aus eine Logdatei holen willst.
Eigentlich kommt das Word "Batch" aus dem altgälischen und bedeutet soviel wie "erst den Plan zu Ende denken".
Grüße
Biber
willkommen im Forum.
Zitat von @89485:
geht es auf noch perfektioniert, dass das Fenster minimiert ist, und erst aufpoppt, wenn der Kopiervorgang fertig ist???
Sagen wir so - könnte zurechtgefrickelt wrden, aber das hat nun erst recht nichts mit "perfektioniert" zu tun.geht es auf noch perfektioniert, dass das Fenster minimiert ist, und erst aufpoppt, wenn der Kopiervorgang fertig ist???
Batch = von Ansatz her eigentlich unbeaufsichtigter Ablauf, im Normalfall sogar ohne BenutzerInneninteraktion.
Von daher zieh ich ja noch mit beim "unsichtbar laufen lassen". Solange denn alles "zur Sicherheit" in irgendeiner Logdatei steht.
Aber "unsichtbar laufen lassen" und dann doch wieder eine vom User zu bestätigende Info hochpoppen lassen... nö.
Diskutier erst mal mit dir aus, ob du nun linksrum oder rechtsrum gehen willst, ob die Infos nun wurscht oder nicht wurscht sind, ob du nun SOFORT wissen willst, ob 45320 Dateien in 3249 Verzeichnissen kopiert wurden oder ob du es bei Bedarf aus eine Logdatei holen willst.
Eigentlich kommt das Word "Batch" aus dem altgälischen und bedeutet soviel wie "erst den Plan zu Ende denken".
Grüße
Biber
Moin Batchliebhaber,
wenn denn dieser XCOPY-lauf regelmäßig und unbeaufsichtigt vor sich hin schwurbeln soll, dann würde ich ihn über den Taskplaner halt jeden Freitag nachmittag dazu verdonnern.
Und du richtest dem kleinen vorher noch irgendwo ein Tobe-Verzeichnis :D:\XcopyLogs ein und sagt ihm mit dem Umleitungszeichen ">", dass er alles, was er nicht für sich behalten kann dort in eine Datei schreibt.
Am besten in eine Datei, die im Dateinamen noch das Datum mitschleppt (hast du irgendwo in einem Parallelthread ja schon gezeigt, wie das gehen könnte).
Wenn auch noch eventuelle Fehlermeldungen mit ins Log sollen dann zusätzlich zum ">D:\XlopyLog\{%FormatiertesDatum%}.log" noch ein "2>&1" dazu.
Grüße
Biber
wenn denn dieser XCOPY-lauf regelmäßig und unbeaufsichtigt vor sich hin schwurbeln soll, dann würde ich ihn über den Taskplaner halt jeden Freitag nachmittag dazu verdonnern.
Und du richtest dem kleinen vorher noch irgendwo ein Tobe-Verzeichnis :D:\XcopyLogs ein und sagt ihm mit dem Umleitungszeichen ">", dass er alles, was er nicht für sich behalten kann dort in eine Datei schreibt.
Am besten in eine Datei, die im Dateinamen noch das Datum mitschleppt (hast du irgendwo in einem Parallelthread ja schon gezeigt, wie das gehen könnte).
Wenn auch noch eventuelle Fehlermeldungen mit ins Log sollen dann zusätzlich zum ">D:\XlopyLog\{%FormatiertesDatum%}.log" noch ein "2>&1" dazu.
Grüße
Biber
Moin Batchliebhaber,
okay, also dann.... angenommen, deine Sicherungsdatei besteht eigentlich aus der Zeile:
... und du wolltest sowohl "normale Vollzugsmeldungen" wie "xxx Dateien kopiert" wie auch Fehlermeldungen in ein Logfile schreiben, dann so:
...wobei statt {datumsangabe} dann irgendwas eingesetzt werden könnte, was JJJJMMTT repräsentiert und aus %date% zusammengebastelt würde.
In meiner d:\XcopyLogs\XC20100408.log würde dann z.B. stehen:
...wobei die erste Zeile eine Fehlermeldung wäre, die mit " 2>&1" eingefangen wurde und "0 Datei(en) kopiert" eine "normale Vollzugsmeldung".
Grüße
Biber
okay, also dann.... angenommen, deine Sicherungsdatei besteht eigentlich aus der Zeile:
@XCopy f:\temp\*.* z:\bla\ /s {weitere XCopy-Parameter} /q
@XCopy f:\temp\*.* z:\bla\ /s {weitere XCopy-Parameter} /q >d:\XcopyLogs\XC{datumsangabe}.log 2>&1
...wobei statt {datumsangabe} dann irgendwas eingesetzt werden könnte, was JJJJMMTT repräsentiert und aus %date% zusammengebastelt würde.
In meiner d:\XcopyLogs\XC20100408.log würde dann z.B. stehen:
>type d:\XcopyLogs\XC20100408.log
Ungültige Laufwerkangabe
0 Datei(en) kopiert
Grüße
Biber
Hallo Batchliebhaber!
Vorweg: Der Batch sollte so funktionieren, daher betreffen meine Anmerkungen eigentlich nur Stilfragen ...
Die Zeile 3 ist definitiv entbehrlich (Du verwendest ja sinnvoller Weise ohnehin nur absolute Pfade), und das "
In den Zeilen 4 bis 5 würde ich die Anführungszeichen nicht zum Inhalt der Variablen machen, wenn dann ohnehin bei der Verwendung der Variablen (und hier wäre meine Vorgangsweise gleich) Anführungszeichen gesetzt werden.
So, wie Du derzeit %Zielunterver% festlegst, würde auch ein simples
zum selben Ergebnis führen, mir aber nicht gefallen, da ich ein Datumsformat "JJJJ-MM-TT" (schon aufgrund der besseren Sortierbarkeit) bevorzuge.
Schließlich böte es sich noch an, den Pfad zur Logdatei ("C:\Backup\Backup.log") ebenfalls bereits vorweg in einer Variablen festzulegen, wodurch es wesentlich einfacher wird, diesen bei Bedarf abzuändern.
Grüße
bastla
Vorweg: Der Batch sollte so funktionieren, daher betreffen meine Anmerkungen eigentlich nur Stilfragen ...
Die Zeile 3 ist definitiv entbehrlich (Du verwendest ja sinnvoller Weise ohnehin nur absolute Pfade), und das "
cls
" gäbe es bei mir auch nicht.In den Zeilen 4 bis 5 würde ich die Anführungszeichen nicht zum Inhalt der Variablen machen, wenn dann ohnehin bei der Verwendung der Variablen (und hier wäre meine Vorgangsweise gleich) Anführungszeichen gesetzt werden.
So, wie Du derzeit %Zielunterver% festlegst, würde auch ein simples
set "Zielunterverz=%date%"
Schließlich böte es sich noch an, den Pfad zur Logdatei ("C:\Backup\Backup.log") ebenfalls bereits vorweg in einer Variablen festzulegen, wodurch es wesentlich einfacher wird, diesen bei Bedarf abzuändern.
Grüße
bastla