philodendron
Goto Top

Tägliche Kopie mittles Batchdatei

Ich will einmal täglich eine Kopie einer Datei (Dateiname bleibt gleich) aus einem täglich neu erstellten Ordner (Name ist das Datumn dieser Form: YYYYMMDD)mit Hilfe einer Batchdatei machen.

Hallo liebes Forum...

Wie schon im Vorwort erwähnt versuche ich, täglich eine Kopie einer Datei (Datenbankauszug - Dateiname bleibt immer gleich)zu erstellen.

Diese Datei wird jeden Tag in automatisch in einem neuen Ordner aktualisiert abgelegt.
Aus diesem Ordner möchte ich die Datei einmal täglich ein ein temporäres Verzeichnis kopieren.

Der Ordner hat folgenden Namen und Form "YYYYMMDD_HHMMSS"
Das Datum vor dem underscore krieg ich noch hin (aktuelles Datum - für ganze Tag).
Jedoch bei den Stunden, Minuten und Sekunden (hinter underscore) tue ich mir schwer, da diese Zeit ja nicht mehr aktuell ist.

Nun dachte ich an eine Wildcard bzw Regex um den beliebigen Zahlenwert (6-stellig) zu filtern, da die Ablage nicht immer zum exakt gleichen Zeitpunkt erfolgt und somit immer irgendeine 6stellige Zahl ist.

Anbei mal meine Batch der grundsätzlich funktioniert aber leider nur bis zum underscore...


@echo off &setlocal
set "StartOrdner=\\NAS03\efcom\P\Datentraeger\SQLExport\intranet"
set "ZielOrdner=C:\TEMP\Intranet"
set "DateiMaske=*SFBFIR016.txt*"


set jahr=%date:~-4%
set monat=%date:~-7,2%
set tag=%date:~-10,2%
set "OrdnerMaske=%jahr%%tag%%monat%"

set "QuellOrdner=\\NAS03\efcom\P\Datentraeger\SQLExport\intranet\%date:~6,4%%date:~3,2%%date:~0,2%_"
for /d /r "%StartOrdner%" %%i in (*.*) do if not defined QuellOrdner if "%%~nxi" equ "%OrdnerMaske%" set "QuellOrdner=%%~i"
if not defined QuellOrdner echo Ordner %OrdnerMaske% nicht gefunden&goto:eof
copy "%QuellOrdner%\%DateiMaske%" "%ZielOrdner%"
endlocal


Genau für diese Zeile benötige ich einen Ausdruck der mir nach dem underscore jeder beliebige 6-stellige Zahl übernimmt:
set "QuellOrdner=\\NAS03\efcom\P\Datentraeger\SQLExport\intranet\%date:~6,4%%date:~3,2%%date:~0,2%_"

Da ich schon seit langem Suche bzw nicht sicher bin ob das mit Regex überhaupt funktioniert oder wie ich es einbetten soll, wäre ich für jede Hilfe/Anmerkung sehr dankbar.

Liebe Grüsse

Philipp

Content-Key: 203955

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

Ausgedruckt am: 29.03.2024 um 02:03 Uhr

Mitglied: andimue
andimue 26.03.2013 um 09:50:16 Uhr
Goto Top
Hallo philodendron,

wenn du ein Betriebssystem hast, das den Befehl forfiles kennt solltest du dir den mal anschauen.
Der Befehl kennt einen Parameter /D
Damit kannst du mit folgendem Befehl alle Dateien und Verzeichnis ausgeben lassen, die z.B. seit heute modifiziert wurden :

forfiles  /D %date%  /P "%QuellOrdner%"  

Gruß
Andi
Mitglied: Endoro
Endoro 26.03.2013 um 10:04:16 Uhr
Goto Top
Hallo Philipp,

pack doch einfach ein Sternchen vor/nach den Unterstrich und füge das als Suchmuster in die Schleife ein.


bb
Mitglied: ticuta1
ticuta1 26.03.2013 um 10:05:19 Uhr
Goto Top
Hallo Philipp,

Zitat von @philodendron:
Hallo liebes Forum...

Wie schon im Vorwort erwähnt versuche ich, täglich eine Kopie einer Datei (Datenbankauszug - Dateiname bleibt immer
gleich)zu erstellen.


wenn nur eine Kopie istd die Uhrzeit im dateiname irelevant und du könntest die Uhrzeit einfach fallen lassen

Falls Interesse an Dateierstellungszeit vorhanden, die werden so wie so mit der Erschafung der neuen Datei in den Eigenschaften eingetragen.

Damit die ganze Benennung YYYYMMDD_HHMMSS angewendet werden kann, sollst du einfach als Variable(Set) festdefinieren

LG,
Ticuta1
Mitglied: philodendron
philodendron 26.03.2013 um 10:23:39 Uhr
Goto Top
Hi Andi

Ja hab ich und werd ich mir gleich mal anschaun ;)
Mitglied: philodendron
philodendron 26.03.2013 um 10:26:56 Uhr
Goto Top
@mfm4aa

Hab ich schon probiert, dass ich nach dem underline eine sternchen einfüge aber dann übernimmt der das nicht für ne x-beliebige zahl..

Der Ordner der jeden ag erstellt wird sieht zb so aus: 20130326_050529

Das Datum vor dem underline finde ich aber das nach dem underline würd ich gerne mit nem platzhalter lösen und das sternchen bzw [0-999999] etc funkt leider nicht
Mitglied: philodendron
philodendron 26.03.2013 um 10:30:49 Uhr
Goto Top
Grundsätzlich bin ich da voll bei dir...
Das Problem ist aber der Ordner der erstellt wird und in dem die Datei zu Beginn abgelegt wird (von dem aus ich das kopieren will)...
Dieser sieht wie folgt aus: 20130326_050529

Das Datum vorm underline is nicht das Problem da es ja den ganzen Tag aktuell bleibt und somit auch den ganzen Tag findet.
Da die Zeit nachdem underline (HHMMSS)klarerweise nicht mehr aktuell ist da schon wieder Zeit vergangen ist weiss ich nicht weiter...
Mitglied: Endoro
Endoro 26.03.2013 um 10:45:27 Uhr
Goto Top
Hallo Philipp,

geht doch prima mit 'nem Sternchen:
C:\>md %date%_050529

C:\>dir /ad %date%*

Output:
26.03.2013  10:41    <DIR>          26.03.2013_050529


bb
Mitglied: philodendron
philodendron 26.03.2013 um 11:05:35 Uhr
Goto Top
set "QuellOrdner=\\nas03\efcom\P\Datentraeger\SQLExport\intranet\%date:~6,4%%date:~3,2%%date:~0,2%*"

set "DateiMaske=*SFBFIR016.txt*" (Dateiname nach dem gesucht wird)

Das hab ich jetz eingefügt...


Das ist die Datei nach der gesucht wird...

Nach dem ~0,2% hab ich ein Sternchen eingefügt...

Nun kommt folgende Fehlermeldung:

C:\Users\fb0320\Desktop>tagessicherung_sfbfir016.bat
\\NAS03\efcom\P\Datentraeger\SQLExport\intranet\20130326*\*SFBFIR016.txt*
Die Syntax für den Dateinamen, Verzeichnisnamen oder die Datenträgerbezeichnung
ist falsch.
0 Datei(en) kopiert.
Mitglied: philodendron
philodendron 26.03.2013 um 11:06:05 Uhr
Goto Top
ich überseh irgendwas
Mitglied: bastla
bastla 26.03.2013 um 11:22:28 Uhr
Goto Top
Hallo philodendron und willkommen im Forum!
ich überseh irgendwas
Ich seh auch nur noch Sterne - oder jedenfalls zu viele davon ... face-wink

Also jetzt noch mal ganz genau: Wo liegt denn die Datei "SFBFIR016.txt"? Wenn unmittelbar in "\\NAS03\efcom\P\Datentraeger\SQLExport\intranet\20130326*" sollte sich das Kopieren doch (ungetestet) so machen lassen:
for /d %%i in ("\\NAS03\efcom\P\Datentraeger\SQLExport\intranet\%date:~6,4%%date:~3,2%%date:~0,2%_*") do copy "%%i\%DateiMaske%" "%ZielOrdner%"
Alternativ kannst Du natürlich auch zuerst den Quellordner in die entsprechende Variable packen und den auf die selbe Art ermitteln:
for /d %%i in ("\\NAS03\efcom\P\Datentraeger\SQLExport\intranet\%date:~6,4%%date:~3,2%%date:~0,2%_*") do set "Quellordner=%%i"
Grüße
bastla
Mitglied: ticuta1
ticuta1 26.03.2013 um 11:26:05 Uhr
Goto Top
Hallo philodendron,

schau mal diese einleitung...http://www.heisig-it.de/batch.htm vielleicht hilft bei der Lösungsuche.
LG,
ticuta1
Mitglied: philodendron
philodendron 26.03.2013 um 11:31:47 Uhr
Goto Top
super ich spiel mich mal und melde mich ;)
Mitglied: philodendron
philodendron 26.03.2013 um 11:32:22 Uhr
Goto Top
@ticuta1

danke schau ich mir auch gleich mal an
Mitglied: philodendron
philodendron 26.03.2013 um 11:44:55 Uhr
Goto Top
@bastla

der genau pfad der datei ist für heute:

\\NAS03\efcom\P\Datentraeger\SQLExport\intranet\20130326_050521\01\SFBFIR016.txt

so ich hab den ersten string mal probiert

so sieht meine batch-datei aus:

@echo off &setlocal
set "StartOrdner=\\NAS03\efcom\P\Datentraeger\SQLExport\intranet"
set "ZielOrdner=C:\TEMP\Intranet"
set "DateiMaske=*SFBFIR016.txt*"


set jahr=%date:~-4%
set monat=%date:~-7,2%
set tag=%date:~-10,2%
set "OrdnerMaske=%jahr%%tag%%monat%"

for /d %%i in ("\\NAS03\efcom\P\Datentraeger\SQLExport\intranet\%date:~6,4%%date:~3,2%%date:~0,2%_*\01") do copy "%%i\%DateiMaske%" "%ZielOrdner%"

wenn ich diese datei im cmd ausführe bekomme ich garkeine fehlermeldung aber im zielordner ist auch nix
Mitglied: bastla
bastla 26.03.2013 aktualisiert um 12:01:18 Uhr
Goto Top
Hallo philodendron!

Bitte verwende zum Posten von Code die passende Formatierung.
for /d %%i in ("\\NAS03\efcom\P\Datentraeger\SQLExport\intranet\%date:~6,4%%date:~3,2%%date:~0,2%_*\01") do copy "%%i\%DateiMaske%" "%ZielOrdner%"
In meinem Beispiel gab es aber kein "\01" am Ende des Pfades ...

Grüße
bastla
Mitglied: leknilk0815
leknilk0815 26.03.2013 aktualisiert um 12:21:57 Uhr
Goto Top
Sorry wenn ich mich einmische - aber warum verwendet ihr einen Pfad zum testen, bei dem die Fehler bereits vorprogrammiert sind?
Für sowas erstelle ich mir ein Verzeichnis c:\tmp und kann darin rumwursteln.
Wenn die Batch funktioniert, kann man den Pfad mit dem "echten" erweitern...

Ich hab übrigens auch etwas rumgemurkst - wenn man irgendwie das Ergebnis von "dir /b 20130326_*" in eine Variable bringen könnte, käme man weiter. Aber das bring ich einfach nicht hin...
Mitglied: Endoro
Endoro 26.03.2013 um 12:35:21 Uhr
Goto Top
Zitat von @leknilk0815:
Ich hab übrigens auch etwas rumgemurkst - wenn man irgendwie das Ergebnis von "dir /b 20130326_*" in eine Variable
bringen könnte, käme man weiter. Aber das bring ich einfach nicht hin...

Hallo leknilk0815,

das geht ja mit einer for Schleife:

for /f "delims=" %%i in ('dir /ad /b 20130326_*') do set "Ordner=%%i"  


bb
Mitglied: leknilk0815
leknilk0815 26.03.2013, aktualisiert am 28.03.2013 um 11:17:06 Uhr
Goto Top
Danke!

dann probier mal das hier aus:
@for /F "tokens=1,2,3,4,5 delims=. " %%a in ('date /t') do set jahrdat=%%c  
@for /F "tokens=1,2,3,4,5 delims=. " %%a in ('date /t') do set mondat=%%b  
@for /F "tokens=1,2,3,4,5 delims=. " %%a in ('date /t') do set tagdat=%%a  
@for /F "tokens=1,2,3,4,5 delims=. " %%a in ('time /t') do set mindat=%%a  
pause

set mindat=%mindat::=%
md %jahrdat%%mondat%%tagdat%_%mindat%00

pause 
echo %jahrdat%%mondat%%tagdat%_
pause 
dir /b %jahrdat%%mondat%%tagdat%_*
pause
for /f "delims=" %%i in ('dir /ad /b 20130326_*') do set "Ordner=%%i"  

pause
md %ordner%-test
pause

der "md" erzeugt hier ein (dummy)- Verzeichnis, damit man die Batch in einem leeren Test-Verzeichnis probieren kann.

Die Batch ist natürlich nicht fertig, aber vielleicht hilft der Denkansatz weiter...

Edit:
Wenn man dann noch:
for /f "delims=" %%i in ('dir /ad /b 20130326_*') do set "Ordner=%%i"  
ersetzt durch:
for /f "delims=" %%i in ('dir /ad /b %jahrdat%%mondat%%tagdat%_*') do set "Ordner=%%i"  

kommt man der Sache schon näher...
Mitglied: philodendron
philodendron 26.03.2013 um 16:12:01 Uhr
Goto Top
@bastla

sorry der noob nochmal...

das was du da gschrieben hast kommt bvoll hin
wenn ich in der batchdatei das \01 dazu füge bekomm ich zwar keine fehlermeldung und er will auch einen copy befehl durchführen aber im zielordner find passiert nix

anbei die ausgabe mit echo aus der cmd:

C:\Users\fb0320\Desktop>test1.bat
ECHO ist eingeschaltet (ON).

C:\Users\fb0320\Desktop>set "StartOrdner=\\NAS03\efcom\P\Datentraeger\SQLExport\intranet"

C:\Users\fb0320\Desktop>set "ZielOrdner=C:\TEMP\Intranet"

C:\Users\fb0320\Desktop>set "DateiMaske=*sfbfir016.txt*"

C:\Users\fb0320\Desktop>set jahr=2013

C:\Users\fb0320\Desktop>set monat=03

C:\Users\fb0320\Desktop>set tag=26

C:\Users\fb0320\Desktop>set "OrdnerMaske=20132603"

C:\Users\fb0320\Desktop>for / %i in ("\\NAS03\efcom\P\Datentraeger\SQLExport\int
ranet\20130326_*\01") do copy "%i\*sfbfir016.txt*" "C:\TEMP\Intranet"


ich hab keinerlei erfahrung aber da kann doch nicht mehr viel falsch sein
Mitglied: bastla
bastla 26.03.2013 um 17:59:12 Uhr
Goto Top
Hallo philodendron!
wenn ich in der batchdatei das \01 dazu füge ...
Und warum tust Du das?

Oben habe ich ja schon einmal gefragt, wo denn die Datei "SFBFIR016.txt" genau liegt (und bisher keine Antwort erhalten) - sollte es im Unterordner "01" sein, dann so:
for /d %%i in ("\\NAS03\efcom\P\Datentraeger\SQLExport\intranet\%date:~6,4%%date:~3,2%%date:~0,2%_*") do copy "%%i\01\%DateiMaske%" "%ZielOrdner%
Grüße
bastla
Mitglied: philodendron
philodendron 27.03.2013 aktualisiert um 09:12:44 Uhr
Goto Top
Hi Bastla

Ich habe dir ungeschickterweise das /01 im pfad unterschlagen...

Sorry für die unnötige Mühe

Ich wollte das Ganze mal nur für den Ordner darüber sprich den:

\\nas03\efcom\p\datentraeger\sqlexport\intranet\20130327_050526


Nachdem das super funktioniert hat dank deines Strings, dachte ich dümmlicherweie, ich häng einfach das "\01" an den Pfad nach dem Platzhalter dran...

Wie ich allerdings erfahren hab geht das nicht


ABER:

Jetzt funktionierts mit der Dateimaske

Ich danke vielmals für die Lösung des Problems ;)
Mitglied: bastla
bastla 27.03.2013 um 11:03:16 Uhr
Goto Top
Hallo philodendron!

Hinsichtlich der Wildcards (Platzhalter) gibt es eigentlich eine einfache Regel: Verwende sie nur im letzten Teil (nach dem letzten "\") eines Pfades ...

Grüße
bastla
Mitglied: philodendron
philodendron 27.03.2013 um 11:07:57 Uhr
Goto Top
Hi Bastla

Ist gespeichert ;)

LG Phil
Mitglied: leknilk0815
leknilk0815 27.03.2013 um 11:25:29 Uhr
Goto Top
Servus,
wäre es vielleicht möglich, das funktionierende Script hier einzustellen?
Ist vielleicht hilfreich, wenn man schnell ein Beispiel braucht, anstatt sich durch den Thread zu wühlen...

Danke und Gruß - Toni
Mitglied: philodendron
philodendron 28.03.2013 um 10:50:47 Uhr
Goto Top
ja klar...wie konnte ich nur ;)

@echo off &setlocal


rem Kopie Datei "sfbfir015.txt" aus \\NAS03\efcom\P\Datentraeger\SQLExport\intranet\YYYYMMDD_(Platzhalter 6-stellige Zahl)\01

set "StartOrdner=\\NAS03\efcom\P\Datentraeger\SQLExport\intranet"
set "ZielOrdner=C:\TEMP\Intranet"
set "DateiMaske=*sfbfir015.txt*"


set jahr=%date:~-4%
set monat=%date:~-7,2%
set tag=%date:~-10,2%
set "OrdnerMaske=%jahr%%tag%%monat%"


for /d %%i in ("\\NAS03\efcom\P\Datentraeger\SQLExport\intranet\%date:~6,4%%date:~3,2%%date:~0,2%_*") do copy "%%i\01\%DateiMaske%" "%ZielOrdner%"


rem Kopie Datei "sfbfir016.txt" aus \\NAS03\efcom\P\Datentraeger\SQLExport\intranet\YYYYMMDD_(Platzhalter 6-stellige Zahl)\01

set "StartOrdner=\\NAS03\efcom\P\Datentraeger\SQLExport\intranet"
set "ZielOrdner=C:\TEMP\Intranet"
set "DateiMaske=*sfbfir016.txt*"


set jahr=%date:~-4%
set monat=%date:~-7,2%
set tag=%date:~-10,2%
set "OrdnerMaske=%jahr%%tag%%monat%"


for /d %%i in ("\\NAS03\efcom\P\Datentraeger\SQLExport\intranet\%date:~6,4%%date:~3,2%%date:~0,2%_*") do copy "%%i\01\%DateiMaske%" "%ZielOrdner%"


rem Kopie Datei "sfbfir015.txt" aus \\NAS03\efcom\P\Datentraeger\SQLExport\intranet\zession\YYYYMMDD_(Platzhalter 6-stellige Zahl)\01 -> umbenannt in "zession_sfbfir015.txt"

set "StartOrdner=\\NAS03\efcom\P\Datentraeger\SQLExport\intranet"
set "ZielOrdner=C:\TEMP\Intranet"
set "DateiMaske=*sfbfir015.txt*"


set jahr=%date:~-4%
set monat=%date:~-7,2%
set tag=%date:~-10,2%
set "OrdnerMaske=%jahr%%tag%%monat%"


for /d %%i in ("\\NAS03\efcom\P\Datentraeger\SQLExport\intranet\zession\%date:~6,4%%date:~3,2%%date:~0,2%_*") do copy "%%i\01\%DateiMaske%" "%ZielOrdner%\Zession_SFBFIR015.txt"


rem Kopie Datei "sfbfir016.txt" aus \\NAS03\efcom\P\Datentraeger\SQLExport\intranet\zession\YYYYMMDD_(Platzhalter 6-stellige Zahl)\01 -> umbenannt in "zession_sfbfir016.txt"

set "StartOrdner=\\NAS03\efcom\P\Datentraeger\SQLExport\intranet"
set "ZielOrdner=C:\TEMP\Intranet"
set "DateiMaske=*sfbfir016.txt*"


set jahr=%date:~-4%
set monat=%date:~-7,2%
set tag=%date:~-10,2%
set "OrdnerMaske=%jahr%%tag%%monat%"


for /d %%i in ("\\NAS03\efcom\P\Datentraeger\SQLExport\intranet\zession\%date:~6,4%%date:~3,2%%date:~0,2%_*") do copy "%%i\01\%DateiMaske%" "%ZielOrdner%\Zession_SFBFIR016.txt"


Das Skript für nun vier Befehle aus...kann man sicher eleganter machen aber es funkt :D

Beim Auskommentierten (rem) steht immer was passiert
Mitglied: leknilk0815
leknilk0815 28.03.2013 um 10:56:43 Uhr
Goto Top
Danke!
Gruß - Toni
Mitglied: bastla
bastla 28.03.2013 aktualisiert um 11:24:09 Uhr
Goto Top
Hallo philodendron (und auch leknilk0815)!

Darf ich nochmals auf die Formatierungsmöglichkeit für "Code" hinweisen? Außerdem: Wie kann ich einen Beitrag als gelöst markieren? ...

Etwas entschlackt sollte übrigens auch
@echo off &setlocal
set "StartOrdner=\\NAS03\efcom\P\Datentraeger\SQLExport\intranet"  
set "ZielOrdner=C:\TEMP\Intranet"  
set jahr=%date:~-4%
set monat=%date:~-7,2%
set tag=%date:~-10,2%
set "OrdnerMaske=%jahr%%tag%%monat%"  

rem Kopie Datei "sfbfir015.txt" aus \\NAS03\efcom\P\Datentraeger\SQLExport\intranet\YYYYMMDD_(Platzhalter 6-stellige Zahl)\01  
set "DateiMaske=*sfbfir015.txt*"  
for /d %%i in ("\\NAS03\efcom\P\Datentraeger\SQLExport\intranet\%date:~6,4%%date:~3,2%%date:~0,2%_*") do copy "%%i\01\%DateiMaske%" "%ZielOrdner%"  
rem Kopie Datei "sfbfir015.txt" aus \\NAS03\efcom\P\Datentraeger\SQLExport\intranet\zession\YYYYMMDD_(Platzhalter 6-stellige Zahl)\01 -> umbenannt in "zession_sfbfir015.txt"  
for /d %%i in ("\\NAS03\efcom\P\Datentraeger\SQLExport\intranet\zession\%date:~6,4%%date:~3,2%%date:~0,2%_*") do copy "%%i\01\%DateiMaske%" "%ZielOrdner%\Zession_SFBFIR015.txt"  

rem Kopie Datei "sfbfir016.txt" aus \\NAS03\efcom\P\Datentraeger\SQLExport\intranet\YYYYMMDD_(Platzhalter 6-stellige Zahl)\01  
set "DateiMaske=*sfbfir016.txt*"  
for /d %%i in ("\\NAS03\efcom\P\Datentraeger\SQLExport\intranet\%date:~6,4%%date:~3,2%%date:~0,2%_*") do copy "%%i\01\%DateiMaske%" "%ZielOrdner%"  
rem Kopie Datei "sfbfir016.txt" aus \\NAS03\efcom\P\Datentraeger\SQLExport\intranet\zession\YYYYMMDD_(Platzhalter 6-stellige Zahl)\01 -> umbenannt in "zession_sfbfir016.txt"  
for /d %%i in ("\\NAS03\efcom\P\Datentraeger\SQLExport\intranet\zession\%date:~6,4%%date:~3,2%%date:~0,2%_*") do copy "%%i\01\%DateiMaske%" "%ZielOrdner%\Zession_SFBFIR016.txt"  
genügen. Wenn übrigens der Dateiname mit zB "SFBFIR015.txt" ohnehin feststeht, kann er auch gleich als Dateimaske und zum Umbenennen verwendet werden (macht das Ganze etwas flexibler / leichter wartbar):
rem Kopie Datei "sfbfir015.txt" aus \\NAS03\efcom\P\Datentraeger\SQLExport\intranet\YYYYMMDD_(Platzhalter 6-stellige Zahl)\01  
set "DateiMaske=SFBFIR015.txt"  
for /d %%i in ("\\NAS03\efcom\P\Datentraeger\SQLExport\intranet\%date:~6,4%%date:~3,2%%date:~0,2%_*") do copy "%%i\01\%DateiMaske%" "%ZielOrdner%"  
rem Kopie Datei "sfbfir015.txt" aus \\NAS03\efcom\P\Datentraeger\SQLExport\intranet\zession\YYYYMMDD_(Platzhalter 6-stellige Zahl)\01 -> umbenannt in "zession_sfbfir015.txt"  
for /d %%i in ("\\NAS03\efcom\P\Datentraeger\SQLExport\intranet\zession\%date:~6,4%%date:~3,2%%date:~0,2%_*") do copy "%%i\01\%DateiMaske%" "%ZielOrdner%\Zession_%Dateimaske%"  
und da ja
%date:~6,4%%date:~3,2%%date:~0,2%
eigentlich die Ordnermaske ist (das wäre schließlich der Sinn dieser Variablen), ließe sich (zusammen mit der Verwendung von %StartOrdner%) weiter verkürzen auf:
for /d %%i in ("%StartOrdner%\zession\%Ordnermaske%_*") do copy "%%i\01\%DateiMaske%" "%ZielOrdner%\Zession_%Dateimaske%"
Grüße
bastla
Mitglied: leknilk0815
leknilk0815 28.03.2013 aktualisiert um 11:21:59 Uhr
Goto Top
Sorry, die Funktion habe ich als Menü vermisst, daher ohne.
Da das aber per Hand
test
geht, werde ich das beherzigen.
Danke!

Zitat von @bastla:
Das lässt sich auch nachträglich (oben) noch (durch "Bearbeiten") umsetzen ...

Erledigt!face-smile
Mitglied: bastla
bastla 28.03.2013 aktualisiert um 11:22:52 Uhr
Goto Top
Hallo leknilk0815!

Das lässt sich auch nachträglich (oben) noch (durch "Bearbeiten") umsetzen ...

Grüße
bastla

[Edit] Danke face-smile [/Edit]
Mitglied: philodendron
philodendron 29.03.2013 um 13:16:17 Uhr
Goto Top
Hi Bastla

Vielen Dank für die Anmerkung...werds umbauen

LG