gelöst Mit Batchdatei, kopieren nach Datum
wer weiß rat?
hi admin's
ich habe ein verzeichnis c:\xyz in welchem jeden tag neu eine backupdatei landet (max anzahl 5 stk --> backup1_02.02.2011,backup2_03.02.2011,backup3_04.02.2011 usw.)
nun möchte ich aus diesem verzeichnis per batch, die jeweils aktuellste, egal an welchen tag ich dies tue, van A -> nach > B kopieren !!
hat wer eine idee wie man die umsetzen kann?
muss auch nicht unbedingt batch sein. auch WSH oder anderes möglich!
evtl. beschreibts diese zeile am besten ...
Scripting.FileSystemObject DateCreated DateLastModified
danke
ich habe ein verzeichnis c:\xyz in welchem jeden tag neu eine backupdatei landet (max anzahl 5 stk --> backup1_02.02.2011,backup2_03.02.2011,backup3_04.02.2011 usw.)
nun möchte ich aus diesem verzeichnis per batch, die jeweils aktuellste, egal an welchen tag ich dies tue, van A -> nach > B kopieren !!
hat wer eine idee wie man die umsetzen kann?
muss auch nicht unbedingt batch sein. auch WSH oder anderes möglich!
evtl. beschreibts diese zeile am besten ...
Scripting.FileSystemObject DateCreated DateLastModified
danke
22 Antworten
- LÖSUNG 60730 schreibt am 29.03.2011 um 21:56:34 Uhr
- LÖSUNG bastla schreibt am 29.03.2011 um 22:15:45 Uhr
- LÖSUNG Skyemugen schreibt am 29.03.2011 um 22:26:24 Uhr
- LÖSUNG bastla schreibt am 29.03.2011 um 22:30:31 Uhr
- LÖSUNG 60730 schreibt am 29.03.2011 um 22:44:09 Uhr
- LÖSUNG bastla schreibt am 29.03.2011 um 22:47:19 Uhr
- LÖSUNG 60730 schreibt am 29.03.2011 um 22:50:04 Uhr
- LÖSUNG bastla schreibt am 29.03.2011 um 22:47:19 Uhr
- LÖSUNG Skyemugen schreibt am 29.03.2011 um 22:26:24 Uhr
- LÖSUNG bastla schreibt am 29.03.2011 um 22:15:45 Uhr
- LÖSUNG Biber schreibt am 29.03.2011 um 22:11:46 Uhr
- LÖSUNG CanTan schreibt am 29.03.2011 um 22:36:21 Uhr
- LÖSUNG CanTan schreibt am 29.03.2011 um 23:23:36 Uhr
- LÖSUNG bastla schreibt am 29.03.2011 um 23:44:18 Uhr
- LÖSUNG Skyemugen schreibt am 30.03.2011 um 08:26:20 Uhr
- LÖSUNG bastla schreibt am 30.03.2011 um 08:53:39 Uhr
- LÖSUNG Skyemugen schreibt am 30.03.2011 um 09:02:39 Uhr
- LÖSUNG bastla schreibt am 30.03.2011 um 09:46:13 Uhr
- LÖSUNG Skyemugen schreibt am 30.03.2011 um 09:49:54 Uhr
- LÖSUNG 60730 schreibt am 30.03.2011 um 11:07:54 Uhr
- LÖSUNG Skyemugen schreibt am 30.03.2011 um 11:09:52 Uhr
- LÖSUNG bastla schreibt am 30.03.2011 um 15:26:32 Uhr
- LÖSUNG CanTan schreibt am 30.03.2011 um 18:28:57 Uhr
- LÖSUNG Skyemugen schreibt am 30.03.2011 um 18:40:44 Uhr
- LÖSUNG bastla schreibt am 30.03.2011 um 18:51:13 Uhr
- LÖSUNG CanTan schreibt am 30.03.2011 um 18:28:57 Uhr
- LÖSUNG 60730 schreibt am 30.03.2011 um 11:07:54 Uhr
- LÖSUNG Skyemugen schreibt am 30.03.2011 um 09:49:54 Uhr
- LÖSUNG bastla schreibt am 30.03.2011 um 09:46:13 Uhr
- LÖSUNG Skyemugen schreibt am 30.03.2011 um 09:02:39 Uhr
- LÖSUNG bastla schreibt am 30.03.2011 um 08:53:39 Uhr
- LÖSUNG Skyemugen schreibt am 30.03.2011 um 08:26:20 Uhr
- LÖSUNG bastla schreibt am 29.03.2011 um 23:44:18 Uhr
- LÖSUNG CanTan schreibt am 29.03.2011 um 23:23:36 Uhr
- LÖSUNG CanTan schreibt am 29.03.2011 um 22:36:21 Uhr
LÖSUNG 29.03.2011 um 21:56 Uhr
moin, schau dir mal
Gruß
for /f "delims=" %a in ('dir /b /a-d /od') do echo copy "%~dpna" "ziel\"
genauer in der Dosbuxx an...Gruß
LÖSUNG 29.03.2011 um 22:11 Uhr
[OT]
Moin CanTan,
Aber ich brauch einen Moment, um darüber nachzudenken, okay?
Bis dahin verschiebe ich's mal von "Windowsoderwatt" nach "Batches From Hell".
Grüße
Biber
[/OT]
Moin CanTan,
Zitat von CanTan:
evtl. beschreibts diese zeile am besten ...
Scripting.FileSystemObject DateCreated DateLastModified
Will ich ja jezz' nich' kategorisch ausschliessen... Elvis könnte noch leben, glauben viele. Und klar können Schweine fliegen.evtl. beschreibts diese zeile am besten ...
Scripting.FileSystemObject DateCreated DateLastModified
Aber ich brauch einen Moment, um darüber nachzudenken, okay?
Bis dahin verschiebe ich's mal von "Windowsoderwatt" nach "Batches From Hell".
Grüße
Biber
[/OT]
LÖSUNG 29.03.2011 um 22:15 Uhr
... dann siehst Du vielleicht, dass Du nur die letzte Datei benötigst - also etwa:
Wenn's dann ein Batch wird, jeweils "%%a" anstelle des "%a" ...
Grüße
bastla
@T-Mo
Da "dir /b" ohne "/s" keinen Pfad liefert, ist "%~dp" nicht zweckdienlich (aber schadet zumindest nicht, solange nur das aktuelle Verzeichnis beackert wird), aber das "x" (= alles nach dem letzten ".") unterschlagen ...
for /f "delims=" %a in ('dir /b /a-d /od backup?_*') do set "Neueste=%a"
Grüße
bastla
@T-Mo
Da "dir /b" ohne "/s" keinen Pfad liefert, ist "%~dp" nicht zweckdienlich (aber schadet zumindest nicht, solange nur das aktuelle Verzeichnis beackert wird), aber das "x" (= alles nach dem letzten ".") unterschlagen ...
LÖSUNG 29.03.2011 um 22:26 Uhr
Aloha,
[OT]
cool, erinnert mich ein wenig an einen anderen Thread heute aber hier darf dein /a-d diesmal stehen *gg*, dich nicht auch irgendwie? ok, jetzt brauchen wir wieder "delims=", höhö
[/OT]
Grüße, André
edit: Dann sagen wir einfach, du hast es in weiser Voraussicht schonmal platziert *gg* - man kann ja nie wissen.
[OT]
cool, erinnert mich ein wenig an einen anderen Thread heute aber hier darf dein /a-d diesmal stehen *gg*, dich nicht auch irgendwie? ok, jetzt brauchen wir wieder "delims=", höhö
[/OT]
Grüße, André
edit: Dann sagen wir einfach, du hast es in weiser Voraussicht schonmal platziert *gg* - man kann ja nie wissen.
LÖSUNG 29.03.2011 um 22:30 Uhr
Hallo Skyemugen!
Grüße
bastla
ok, jetzt brauchen wir wieder "delims=", höhö
"Brauchen" ja nicht gerade (solange die Dateinamen so bleiben, wie sie sind), aber das macht nix ... Grüße
bastla
LÖSUNG 29.03.2011 um 22:36 Uhr
geht klaro biber!
@timobeil: der ansatz ist supi !!
heißt im klartext, ich erstelle eine datei die so aussieht wie die die ich am ende kopieren will.
da krüppel ich mal noch etwas drüber ... guter ansatz!
oha ..hier haben sich wohl ein paar antworten überschnitten!
bin am sammel .. und sach scho mal danke !!
@timobeil: der ansatz ist supi !!
heißt im klartext, ich erstelle eine datei die so aussieht wie die die ich am ende kopieren will.
da krüppel ich mal noch etwas drüber ... guter ansatz!
oha ..hier haben sich wohl ein paar antworten überschnitten!
bin am sammel .. und sach scho mal danke !!
LÖSUNG 29.03.2011 um 22:44 Uhr
Salü Bastla
eigentlich glaub ich dir ja fast alles - jetzt hab ich mal einen VPN/RDP aufgemacht und .....
C:\script>for /f "delims=" %a in ('dir /b /od') do @echo [-%~dpna]
[-C:\script\EULA]
[-C:\script\snapshot]
[-C:\script\service]
[-C:\script\nc_net]
[-C:\script\remove_ca_lang]
[-C:\script\snap]
[-C:\script\snap_e]
[-C:\script\tester]
[-C:\script\_berlin]
[-C:\script\explorer]
btw: lustigerweise hatte ich zuerst dein set latest, dann hab ich gesehen, das er kopieren will und den guten Ansatz übern Haufen geworfen....
Gruß
Gruß
mir kein "S" gekauft....extra ein paar Sonderzeichen reingetüddelt [-] damit ich den Pfad nicht sehe - oder
ich bin Blind
Bastla hat mich geheilt - ich kann wieder sehenbtw: lustigerweise hatte ich zuerst dein set latest, dann hab ich gesehen, das er kopieren will und den guten Ansatz übern Haufen geworfen....
Gruß
Gruß
LÖSUNG 29.03.2011 um 22:47 Uhr
@T-Mo
Und jetzt das Ganze nochmal mit einem anderen Pfad:
- da tatsächlich aus dem "dir /b" kein Pfad kommt, wird eben einer (der aktuelle) dazu erfunden (weshalb es, wie angemerkt, auch weiter nicht schadet, wenn's ohnehin nur um das aktuelle Verzeichnis geht - dann ist die Pfadangabe nur überflüssig ).
Grüße
bastla
Und jetzt das Ganze nochmal mit einem anderen Pfad:
for /f "delims=" %a in ('dir /b /od C:\') do @echo [-%~dpna]
dann hab ich gesehen, das er kopieren will und den guten Ansatz übern Haufen geworfen....
Wieso, wenn doch nur eine Datei kopiert werden soll?Grüße
bastla
LÖSUNG 29.03.2011 um 22:50 Uhr
Zitat von bastla:
@T-Mo
Und jetzt das Ganze nochmal mit einem anderen Pfad:
@T-Mo
Und jetzt das Ganze nochmal mit einem anderen Pfad:
for /f "delims=" %a in ('dir /b /od C:\') do @echo [-%~dpna]
>
5 Mark ins Schweinchen , und zwei paar ^ da oben in die Tonne...
Grüße
bastla
bastla
Schankedöhn - mit Äpfeln soll man keine Birnenscripte aus der Hüfte schiessen...
Grüße
LÖSUNG 29.03.2011 um 23:23 Uhr
wenns den doch mal so einfach wäre!
die dateien heißen auf N:\backup\
zB:
SICHER_backup_201103212200.bak
SICHER_backup_201103222200.bak
SICHER_backup_201103232200.bak
SICHER_backup_201103242200.bak
SICHER_backup_201103252200.bak
SICHER_backup_201103282200.bak
...und jeden tag, wird die älteste datei, durch eine neue ersetzt ....
wann auch immer mein batch angeschoben wird, er soll immer nur die eine (neuste) rüber
auf zB: K:\ kopieren!
die dateien heißen auf N:\backup\
zB:
SICHER_backup_201103212200.bak
SICHER_backup_201103222200.bak
SICHER_backup_201103232200.bak
SICHER_backup_201103242200.bak
SICHER_backup_201103252200.bak
SICHER_backup_201103282200.bak
...und jeden tag, wird die älteste datei, durch eine neue ersetzt ....
wann auch immer mein batch angeschoben wird, er soll immer nur die eine (neuste) rüber
auf zB: K:\ kopieren!
LÖSUNG 29.03.2011, aktualisiert 18.10.2012
Hallo CanTan!
Du hast Dir meinen Ansatz da oben (auf Basis Deines Dateinamen-Beispiels "backup1_02.02.2011") angesehen?
Grüße
bastla
Du hast Dir meinen Ansatz da oben (auf Basis Deines Dateinamen-Beispiels "backup1_02.02.2011") angesehen?
Grüße
bastla
LÖSUNG 30.03.2011 um 08:26 Uhr
Aloha bastla!
Wobei ja so wie es jetzt wohl doch anders ist, könnten wir ja wieder auf das schöne /on umspringen.
... aber ich bezweifle, dass er deine Frage positiv beantworten kann auch wenn er eine Stunde sich dafür Zeit gelassen hat ;)
greetz André
Wobei ja so wie es jetzt wohl doch anders ist, könnten wir ja wieder auf das schöne /on umspringen.
for /f %%a in ('dir /b /s /a-d /on "%Quelle%\SICHER_backup_20??*.bak"') do set "Neueste=%%a"
greetz André
LÖSUNG 30.03.2011 um 08:53 Uhr
...wobei wir dann aber gleich Nägel mit Köpfen machen könnten:
Grüße
bastla
01.
set "Quelle=N:\Backup"
02.
for /f %%a in ('dir /b /s /a-d /on "%Quelle%\SICHER_backup_20??*.bak"') do set "Neueste=%Quelle%\%%a"
bastla
LÖSUNG 30.03.2011 um 09:02 Uhr
... dann aber bitte gleich komplett (btw: "Neueste=%Quelle%\%%a" ? jetzt wo /s vorhanden ist, doch eher überflüssig) ;)
Grüße, André
01.
@echo off & setlocal
02.
set "Quelle=N:\Backup"
03.
set "Ziel=K:\"
04.
05.
for /f %%a in ('dir /b /s /a-d /on "%Quelle%\SICHER_backup_20??*.bak"') do set "Neueste=%%a"
06.
copy %Neueste% %Ziel%
LÖSUNG 30.03.2011 um 09:46 Uhr
@Skyemugen
Sorry, hatte nur (zu) kurz drübergeschaut (ansonsten hätte ich oben schon das "/s" rausgenommen, da, so wie ich es verstehe, nur Dateien aus dem Quellordner - und nicht allfälligen Unterordnern - verarbeitet werden sollen; und nur wegen des vollständigen Pfades würde ich diese Option nicht empfehlen) ...
Grüße
bastla
P.S.: Jetzt hast Du CanTan auch die letzte Gelegenheit zu eigener Leistung genommen ...
Sorry, hatte nur (zu) kurz drübergeschaut (ansonsten hätte ich oben schon das "/s" rausgenommen, da, so wie ich es verstehe, nur Dateien aus dem Quellordner - und nicht allfälligen Unterordnern - verarbeitet werden sollen; und nur wegen des vollständigen Pfades würde ich diese Option nicht empfehlen) ...
Grüße
bastla
P.S.: Jetzt hast Du CanTan auch die letzte Gelegenheit zu eigener Leistung genommen ...
LÖSUNG 30.03.2011 um 09:49 Uhr
Aloha bastla!
ich ging nicht davon aus, dass in den Unterordnern ebenfalls nochmal Dateien nach vorgegebener Maske existieren (und dann noch dem letzten Wert entsprechen würde) *gg* wenn doch, hat CanTan doch noch Gelegenheit etwas selbst zu verändern ... wie war das gestern, du wolltest doch auch etwas spannender machen, hehe
Grüße, André
P.S.: also @echo off, Ziel und copy zu setzen, würde ich nicht als Leistung ansehen ;) die for-Schleife haben wir ihm ja schon abgenommen
ich ging nicht davon aus, dass in den Unterordnern ebenfalls nochmal Dateien nach vorgegebener Maske existieren (und dann noch dem letzten Wert entsprechen würde) *gg* wenn doch, hat CanTan doch noch Gelegenheit etwas selbst zu verändern ... wie war das gestern, du wolltest doch auch etwas spannender machen, hehe
Grüße, André
P.S.: also @echo off, Ziel und copy zu setzen, würde ich nicht als Leistung ansehen ;) die for-Schleife haben wir ihm ja schon abgenommen
LÖSUNG 30.03.2011 um 11:07 Uhr
moin Junx und Mädelzzz..
[OT]
@ Sky deine Batch hat aber einen eingebauten selbstzerstörungs Counter 89 jahre lief es und auf einmal
Ich kann mich noch gut an unsere 3270 Zeiten erinnern, das wurden Verträge ohne Ablaufdatum immer mit 99 eingetragen.....
@bastla:
[/OT]
Grüße
[OT]
@ Sky deine Batch hat aber einen eingebauten selbstzerstörungs Counter 89 jahre lief es und auf einmal
Ich kann mich noch gut an unsere 3270 Zeiten erinnern, das wurden Verträge ohne Ablaufdatum immer mit 99 eingetragen.....
@bastla:
P.S.: Jetzt hast Du CanTan auch die letzte Gelegenheit zu eigener Leistung genommen ...
Diese Zeile aus deiner Feder *duck*[/OT]
Grüße
LÖSUNG 30.03.2011 um 11:09 Uhr
Aloha T-Mo,
greetz André
[OT]
@ Sky deine Batch hat aber einen eingebauten selbstzerstörungs Counter 89 jahre lief es und auf einmal
[/OT]
I know, I know aber wir sind doch beide realistisch und glauben nicht daran, dass 2100 n.Chr. die Batch noch ihre Arbeit tun wird *g*@ Sky deine Batch hat aber einen eingebauten selbstzerstörungs Counter 89 jahre lief es und auf einmal
[/OT]
greetz André
LÖSUNG 30.03.2011 um 15:26 Uhr
@T-Mo
Ich weiß doch, womit ich Dir eine Freude machen kann ...
Grüße
bastla
Ich weiß doch, womit ich Dir eine Freude machen kann ...
Grüße
bastla
LÖSUNG 30.03.2011 um 18:28 Uhr
hallo, hallo, hallo administratoren.
wie kann ich euch jemals danken!????
ok, ich überweise euch alles was ich an geld auf meinen konten habe.
1x 2,60€, 1x 5,69€ und 1x 11,99€ !!
habe es glech mal getestet und funkt absolut priiiima!
i love your all°° verneig° und friede mit euch!
wie kann ich euch jemals danken!????
ok, ich überweise euch alles was ich an geld auf meinen konten habe.
1x 2,60€, 1x 5,69€ und 1x 11,99€ !!
habe es glech mal getestet und funkt absolut priiiima!
i love your all°° verneig° und friede mit euch!
LÖSUNG 30.03.2011 um 18:40 Uhr
Aloha,
*lach* so dankbar war bisher auch niemand, schön zu lesen *gg*
Dann nur noch das grüne Häkchen gesetzt und die Arbeit ist getan *^__^*
P.S.: Lass mal deine Kröten stecken *grins* reichen nichtmal für's Frühstück :P
Möge die Batch mit dir sein *lmw*
*lach* so dankbar war bisher auch niemand, schön zu lesen *gg*
Dann nur noch das grüne Häkchen gesetzt und die Arbeit ist getan *^__^*
P.S.: Lass mal deine Kröten stecken *grins* reichen nichtmal für's Frühstück :P
Möge die Batch mit dir sein *lmw*
LÖSUNG 30.03.2011 um 18:51 Uhr
Hallo CanTan!
Freut mich, wenn's passt - aber lass mal stecken ...
@Skyemugen
Grüße
bastla
P.S.: Ging sich dann ja aber dieses Mal doch noch ganz gut aus - wenn man bedenkt, wieviel Monat sonst schon gelegentlich am Ende des Geldes noch übrig war ...
Freut mich, wenn's passt - aber lass mal stecken ...
@Skyemugen
reichen nichtmal für's Frühstück :P
Wie jetzt - für uns alle zusammen?Grüße
bastla
P.S.: Ging sich dann ja aber dieses Mal doch noch ganz gut aus - wenn man bedenkt, wieviel Monat sonst schon gelegentlich am Ende des Geldes noch übrig war ...
Ähnliche Inhalte
Neue Wissensbeiträge
Heiß diskutierte Inhalte