Batch mit datum und Zeit Copieren und verschieben
Hallo erst mal beisammen ich habs mir lange überlegt ne bat datei zu erstellen aber meine cfg kann es nicht also hab ich mich n bisschen schlau gemacht um folgendes Proplem zu lösen:
Aufgabe meiner seits ist 8 dateien (demo01.dem bis demo08.dem) aus dem überordner zu copieren und in einen Unterordner zu schreiben ( demo01_DATUM_Zeit.dem bis demo08_DATUM_ZEIT.dem so sollten die neuen datein aussehen)
Folgendes kam dabei herraus.
Batch datei
echo
cls
set jahr=%date:~-4%
set monat=%date:~-7,2%
set tag=%date:~-10,2%
set zeit=%time:~%
set stunden=%time:~0,2%
set minuten=%time:~3,2%
ren demo01.dem demo01_%jahr%%monat%%tag%_%stunden%%minuten%.dem
xcopy *.dem D:\Steam\SteamApps\MEINNAME\counter-strike source\cstrike\DEMOS
D:\Steam\SteamApps\MEINNAME\counter-strike source\cstrike\cfg in diesem Ordner wir die batch datei ausgefürt ...
D:\Steam\SteamApps\MEINNAME\counter-strike source\cstrike in diesem Ordner sind die zu Kopierenden Datein gespeichert
D:\Steam\SteamApps\MEINNAME\counter-strike source\cstrike\DEMOS und in diesem Ordner sollten die Dateien gespeichert Werden
1. Ich könnte mit Xcopy die dateien Kopieren aber da liegt eben das problem das sich der Ordnername MEINNAME und das laufwerk von PC zu PC Variiert und vor allem wie springe ich von dem unterordner in den Überordner ohne den ganzen Pfad angeben zu müssen ???
2. Es würde mir schon reichen wen er die Datei demo01.dem copiert und in den DEMOS ordner mit geänderten namen speichert.
3. Es ist net gerade viel was ich geschaft habe aber las mal n Bäcker einen Eifelturm bauen (90jahre später hätte er vll das fundament rauf gehen würd ich nicht).........
ich hoffe ihr könnt mir helfen
Aufgabe meiner seits ist 8 dateien (demo01.dem bis demo08.dem) aus dem überordner zu copieren und in einen Unterordner zu schreiben ( demo01_DATUM_Zeit.dem bis demo08_DATUM_ZEIT.dem so sollten die neuen datein aussehen)
Folgendes kam dabei herraus.
Batch datei
echo
cls
set jahr=%date:~-4%
set monat=%date:~-7,2%
set tag=%date:~-10,2%
set zeit=%time:~%
set stunden=%time:~0,2%
set minuten=%time:~3,2%
ren demo01.dem demo01_%jahr%%monat%%tag%_%stunden%%minuten%.dem
xcopy *.dem D:\Steam\SteamApps\MEINNAME\counter-strike source\cstrike\DEMOS
D:\Steam\SteamApps\MEINNAME\counter-strike source\cstrike in diesem Ordner sind die zu Kopierenden Datein gespeichert
D:\Steam\SteamApps\MEINNAME\counter-strike source\cstrike\DEMOS und in diesem Ordner sollten die Dateien gespeichert Werden
1. Ich könnte mit Xcopy die dateien Kopieren aber da liegt eben das problem das sich der Ordnername MEINNAME und das laufwerk von PC zu PC Variiert und vor allem wie springe ich von dem unterordner in den Überordner ohne den ganzen Pfad angeben zu müssen ???
2. Es würde mir schon reichen wen er die Datei demo01.dem copiert und in den DEMOS ordner mit geänderten namen speichert.
3. Es ist net gerade viel was ich geschaft habe aber las mal n Bäcker einen Eifelturm bauen (90jahre später hätte er vll das fundament rauf gehen würd ich nicht).........
ich hoffe ihr könnt mir helfen
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 107660
Url: https://administrator.de/forum/batch-mit-datum-und-zeit-copieren-und-verschieben-107660.html
Ausgedruckt am: 19.04.2025 um 12:04 Uhr
4 Kommentare
Neuester Kommentar
Hallo G4rfi3ld und willkommen im Forum!
Ungetestet etwa so:
Grüße
bastla
Ungetestet etwa so:
@echo off & setlocal
set "Quelle=demo*.dem"
set "Ziel=DEMOS"
set "jahr=%date:~-4%"
set "monat=%date:~-7,2%"
set "tag=%date:~-10,2%"
set "stunden=%time:~0,2%"
set "stunden=%stunden: =0%"
set "minuten=%time:~3,2%"
pushd ..
if not exist "%Ziel%" md "%Ziel%"
for %%i in ("%Quelle%") do copy "%%i" "%Ziel%\%%~ni_%jahr%%monat%%tag%_%stunden%%minuten%%%~xi" >nul
popd
bastla
Hallo G4rfi3ld!
Bevor ich (irgendwann später am Tag) dazu komme, hast Du vielleicht selbst schon einige Antworten auf Deine Fragen gefunden - dazu an der Eingabeaufforderung eingeben:
Kurz zu 2 und 5
Grüße
bastla
Bevor ich (irgendwann später am Tag) dazu komme, hast Du vielleicht selbst schon einige Antworten auf Deine Fragen gefunden - dazu an der Eingabeaufforderung eingeben:
setlocal /?
pushd /?
for /?
Aber wodurch weis das bat, datei das es in dem Ordner einen Unterordner erstellen soll?
Es wird ja zunächst nur der Name des Ordners als Variable %Ziel% festgelegt - die Verwendung der Variablen (zB in Zeile 13) entscheidet darüber, was damit gemeint ist ("md" kann sich zB nur auf einen Ordner beziehen ...)warum hier zwei prozentreichen ohne ihrgendwas darin zu haben ???
Zwei Prozentzeichen werden in Batch für Schleifenvariable benötigt (und bei der Verarbeitung zu einem reduziert, wodurch dann wie an der Eingabezeile etwa ein %i daraus wird).Grüße
bastla