holms
Inventar
- 12.641
Hallo, ja, das Netz ist voll, mit sowas für Batch-Dateien, tatsächlich hab ich da zuviel Ergebnisse und blicke nicht mehr durch. Nutze das sonst nie.
Vielleicht für jemanden hier einfach? xcopy am besten dafür? Folgendes möchte ich, hier am Beispiel:
Im Ordner C:\Users\User\Desktop\Quelle befindet sich immer nur eine einzige Datei namens beispiel.htm . Diese wird ab und an aktualisiert.
Die Datei soll automatisch einmal am Tag um 14 Uhr in den Ordner C:\Users\User\Desktop\Ziel kopiert werden, dabei soll der Dateiname das Datum beinhalten, also beispiel_yyyy-mm-tt.htm
Das "automatisch" geht ja wohl mit einem Task in Windows. Wie geht aber die Batch-Datei am besten/sichersten?
Falls wichtig: Die reale Quelldatei liegt im lokalen Netzwerk nicht auf dem eigenen PC, falls das noch wichtig ist.
Alles verständlich? Danke für Hilfe.
Nachtrag, habe nun das hier gefunden, ist nur normal "copy":
Ok, da werden alle Dateien im Quellordner kopiert, ist ja egal, da dort immer nur eine Datei mit demselben Dateinamen drin ist. Klappt prinzipiell.
Schönheitsfehler. Der neue Dateiname ist
Also nicht das Jahr zuerst. Und hat hinter der Jahreszahl ein Leerzeichen. Kann man das entfernen?
Oder gibt es eh eine bessere Lösung?
Vielleicht für jemanden hier einfach? xcopy am besten dafür? Folgendes möchte ich, hier am Beispiel:
Im Ordner C:\Users\User\Desktop\Quelle befindet sich immer nur eine einzige Datei namens beispiel.htm . Diese wird ab und an aktualisiert.
Die Datei soll automatisch einmal am Tag um 14 Uhr in den Ordner C:\Users\User\Desktop\Ziel kopiert werden, dabei soll der Dateiname das Datum beinhalten, also beispiel_yyyy-mm-tt.htm
Das "automatisch" geht ja wohl mit einem Task in Windows. Wie geht aber die Batch-Datei am besten/sichersten?
Falls wichtig: Die reale Quelldatei liegt im lokalen Netzwerk nicht auf dem eigenen PC, falls das noch wichtig ist.
Alles verständlich? Danke für Hilfe.
Beiträge automatisch zusammengeführt:
Nachtrag, habe nun das hier gefunden, ist nur normal "copy":
Code:
for /f "tokens=*" %%n in ('date /t') do set thisdate=%%n
:: replace '/' with '-' as /'s don't work in file names.
set thisdate=%thisdate:/=-%
set firstfolder=C:\Users\User\Desktop\Quellordner
set secondfolder=C:\Users\User\Desktop\Zielordner
for /r "%firstfolder%" %%n in (*) do call :copyfile "%%~nn" "%%~xn" "%%~dpn"
goto :EOF
:copyfile
copy "%~3\%~1%~2" "%secondfolder%\%~1_%thisdate%.htm"
Ok, da werden alle Dateien im Quellordner kopiert, ist ja egal, da dort immer nur eine Datei mit demselben Dateinamen drin ist. Klappt prinzipiell.
Schönheitsfehler. Der neue Dateiname ist
beispiel_tt-mm-yyyy .htm
Also nicht das Jahr zuerst. Und hat hinter der Jahreszahl ein Leerzeichen. Kann man das entfernen?
Oder gibt es eh eine bessere Lösung?
Zuletzt bearbeitet: