tho1978
Goto Top

Batch zum Datei kopieren und Dateiname mit Datum benennen

Hallo,

ich benötige eine Batchdatei, die mit eine Datei die ich bereits habe kopiert und dann mit einem Datum versieht. Ich brauche dies für ein ganzes Jahr.

Also Ausgangsdatei heisst 1.1.2011 und nun soll die automatisch kopiert werden als 1.2.2010, 1.3.2010 usw usw usw

Ne Idee ??

Danke und Gruß

Thorsten

Content-ID: 157217

Url: https://administrator.de/contentid/157217

Ausgedruckt am: 08.11.2024 um 08:11 Uhr

86263
86263 17.12.2010 um 23:25:23 Uhr
Goto Top
Moin,
for /L %%i IN (1,1,12) DO @echo 1.%%i.2011
Das @echo ersetzt du halt durch den copy-Befehl.

MfG
Xaero1982
Xaero1982 17.12.2010 um 23:25:34 Uhr
Goto Top
Hi,

sorry, aber ich versteh beim besten Willen nicht was du willst?!

Kannste mal nen Beispiel bringen bitte?!

VG
tho1978
tho1978 18.12.2010 um 00:02:23 Uhr
Goto Top
Ja hab ich doch, ich habe als Ausgangsdatei eine Datei mit dem Namen 1.1.2011. Nun brauche ich diese Datei für jeden Tag des Jahres, also die nächsten Dateien mit selben Inhalt sollen 2.1.2011 3.1.2011 4.1.2011 heißen usw usw
86263
86263 18.12.2010 um 00:05:34 Uhr
Goto Top
aha also willst du zum schluss 365 dateien haben ?
tho1978
tho1978 18.12.2010 um 00:09:45 Uhr
Goto Top
jupp genau, 365 dateien mit demselben inhalt
60730
60730 18.12.2010 um 00:24:14 Uhr
Goto Top
Zitat von @tho1978:
jupp genau, 365 dateien mit demselben inhalt

moin,

ich hoffe mit ich benötige und ich brauche eine Batchdatei, die - meinst du nur dass du Lösungsvorschläge suchst und keine fertigen Batche.
(die bringen dir nämlich nix - weil du dann evtl. im nächsten Jahr wieder hier auf der Matte stehst - lach nicht gab und gibt es alles)

for /L %b in (1,1,12) do for /L %a in (1,1,30) do echo %a.%b.2011

  • Die zwei zuvielen bzw. die fehlenden 5 kann man ja mit der Hand löschen/anlegen.

Gruß
pieh-ejdsch
pieh-ejdsch 19.12.2010 um 02:18:20 Uhr
Goto Top
moin,

fürs Schaltjahr fehlt ja dann eine Datei.
die kommt dann aber mit dem Schnipsel mit.

:: ----schnipp---JahresbilanzImVorfeld.cmd
@echo off&setlocal
::zum Entschärfen zwei Doppelpunkete vor die nächste Zeile setzen
set "Anzeigen=@echo."  

set Pfad="D:\Adminhelp\JahresbilanzImVorfeld"  

::für eine bessere Sortierung Datum / Datei mit Vornull wählen: 01.01.2011
set "Datei=1.1.2011"  

if not defined Anzeigen set "Um=>nul"  
if "%Datei:~0,1%" == "0" set "VorNull=0"  
pushD %Pfad%
if not exist "%Datei%" echo.Datei "%Datei%" nicht da!&popD&pause&goto :eof  
for %%i in ("%Datei%") do for /f "tokens=3 delims=." %%j in ("%%~i") do for /f %%k in ('set /a "Februar = 28 + ( %%j / 4- ( %%j - 1 ) / 4  - ( %%j / 100 - ( %%j - 1 ) / 100) + ( %%j / 400 - ( %%j - 1 ) / 400 ) )"') do for %%l in (%VorNull%1:31 %VorNull%2:%%k %VorNull%3:31 %VorNull%4:30 %VorNull%5:31 %VorNull%6:30 %VorNull%7:31 %VorNull%8:31 %VorNull%9:30 10:31 11:30 12:31) do for /f "tokens=1,2 delims=:" %%m in ("%%l") do for /l %%o in (1,1,%%n) do if %%o leq 9 (%Anzeigen%copy "%%~i" "%Vornull%%%o.%%m.%%j" %um% ) else %Anzeigen%copy "%%~i" "%%o.%%m.%%j" %Um%  
popD&echo.Fertig!&pause&goto :eof
:: ----schnapp---JahresbilanzImVorfeld.cmd

gute Nacht

Gruß Phil
Patches0hulahan
Patches0hulahan 14.02.2011 um 11:17:27 Uhr
Goto Top
edit:
sorry, falsche stelle