razfaz
Goto Top

Dateien kopieren mit Datum von heute

Dateien kopieren mit Datum von heute.

Benötige ein Batch Datei die auf einem Netzwerkordner die Dateien mit dem Datum von heute in ein anderes Verzeichnis im Netzwerk kopiert.
Wie stelle ich das am besten an?

Content-ID: 164565

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

Ausgedruckt am: 26.11.2024 um 14:11 Uhr

60730
60730 14.04.2011 um 10:07:39 Uhr
Goto Top
Moin, :'(

Wie stelle ich das am besten an?
am besten hinten face-devilish

Ok habe ich nun brauch eich ne Lösung für meine Frage.

  • Weder eine Grußformel noch Ross oder Reiter
  • sieh an, der GuteLauneWetterfrosch klettert bis ganz runter auf der Sprossenleiter.

hinten ist bei mir da, wo die Sonne nicht scheint.
Es ist zum Weinen.
Razfaz
Razfaz 14.04.2011 um 10:10:39 Uhr
Goto Top
Ok habe ich nun brauch ich ne Lösung für meine Frage.
99045
99045 14.04.2011 um 10:23:41 Uhr
Goto Top
Zitat von @Razfaz:
Wie stelle ich das am besten an?
Na razfaz, wie sonst? Oder vielleicht doch besser ruckzuck? *grübel*
Razfaz
Razfaz 14.04.2011 um 10:35:10 Uhr
Goto Top
Danke für die kreativen Antworten, aber kann mir bitte jemand die Lösung für meine Frage geben?
Wäre dafür sehr dankbar.
Skyemugen
Skyemugen 14.04.2011 um 10:36:39 Uhr
Goto Top
Zitat von @Razfaz:
Danke für die kreativen Antworten, aber kann mir bitte jemand die Lösung für meine Frage geben?
Wäre dafür sehr dankbar.

Aloha,

und wir wären immer noch sehr dankbar, wenn du endlich mal eine Begrüßung und einen Schlussgruß uns liefern würdest oder alternativ einfach noch mal T-Mos Beitrag lesen würdest ...

greetz André

und dabei ist heute nicht einmal Montag
Razfaz
Razfaz 14.04.2011 um 10:53:58 Uhr
Goto Top
Ok, neuer Anfang ;) :

Hallo allerseits und eine schönen Donnerstag morgen,

ich benötige eine Batch Datei, die mir aus einem Netzwerkverzeichnis die Dateien von heute in ein anderes Verzeichnis kopiert.
Kann mir bitte jemand die Lösung für meine Frage hier beantworten?
Vielen Dank für Eure Hilfe.

Lieben Gruß
Marco
brammer
brammer 14.04.2011 um 10:57:11 Uhr
Goto Top
Hallo,

um es einfach zu formulieren: schreib dir die Batch selber und wen du Probleme damit hast stelle zu deinem Problem mit deiner Batch eine Frag hier im Forum!

Du wirst hier keine fertige Batch bekommen!

brammer
99045
99045 14.04.2011 um 11:01:00 Uhr
Goto Top
Hallo,

du könntest dazu Xcopy verwenden mit dem Parameter /D

Hilfe mit xcopy /?

Gruß
Razfaz
Razfaz 14.04.2011 um 11:05:28 Uhr
Goto Top
Hi,

also ich habe da schon was, aber das klappt irgendwie nicht.

 
@echo off & setlocal 
If [%1]== %0 *.*  
Set "ZielDir=\\172.22.12.40\Dateien"   
Set "QuellDirs=c:\"  
for /f %%i in ('dir /A:-d %ZielDir% ^|find "Datei(en)"') do Set /a "Anz=%%i"  
for /f %%i in ('dir /b /a:-d') do (echo %%~ti |find "%date%") && copy "%%~dpnxi" %zieldir%>nul  
for /f %%i in ('dir /A:-d %ZielDir% ^|find "Datei(en)"') do Set /a "Anz=%%i - %Anz%"  


Da ich mich mir dieser Programmierung überhaupt nicht auskenne, wäre ich dankbar, wenn mir jemand bitte sagen könnte wo der Fehler liegt.
Gruß
Marco
Skyemugen
Skyemugen 14.04.2011 um 11:15:43 Uhr
Goto Top
Aloha,

also wenn du nur aus einem Verzeichnis kopieren willst, richte dich doch nach Kaputtnicks Vorschlag ...
set "Datum=%date:~3,2%-%date:~0,2%-%date:~-4%"  
xcopy %QuellDirs% %ZielDir% /D:%Datum%
für alles weitere hält xcopy /? ja noch ein paar Schalter bereit ...

greetz André
brammer
brammer 14.04.2011 um 11:21:57 Uhr
Goto Top
Hallo,

na geht doch...

brammer
Razfaz
Razfaz 14.04.2011 um 11:28:45 Uhr
Goto Top
Hi,

ok das hat schon fasst geklappt.
@echo off & setlocal 

set "quelcopy=C:\*.ini"    
set "zielcopy=\\172.22.12.40\Dateien\*.*"    
xcopy "%quelcopy%" "%zielcopy%" /d  

Nur kopiert er mir alle ini dateien aus diesem Verzeichniss und nicht die Dateien von heute.
Was muss hinter dem xcopy /d stehen, damit nur die heutigen Dateien kopiert werden?

Gruß
Marco
Skyemugen
Skyemugen 14.04.2011 um 11:32:31 Uhr
Goto Top
Aloha Marco,

einfach mal meinen Beitrag von 11:15 lesen ...

greetz André
60730
60730 14.04.2011 um 11:36:39 Uhr
Goto Top
moin,

geht doch und hat auch nur mir weh getan...

@echo off & setlocal
ist so - bei Tests - immer schlecht.

set "quelcopy=C:\*.ini"
bedeutet?
Nur kopiert er mir alle ini dateien aus diesem Verzeichniss und nicht die Dateien von heute.
  • was ist denn Quellcopy ? ich machs dir mal fetter....

Was muss hinter dem xcopy /d stehen, damit nur die heutigen Dateien kopiert werden?
  • langsam und der reihe nach

  • xcopy /?

gruß
Razfaz
Razfaz 14.04.2011 um 12:59:25 Uhr
Goto Top
Hallo,

super das hier hat nun so geklappt wie ich es haben wollte:
@echo off & setlocal 

set "Datum=%date:~3,2%-%date:~0,2%-%date:~-4%   
set "quelcopy=C:\*.ini"    
set "zielcopy=\\172.22.12.40\Dateien\*.*"    
xcopy %quelcopy% %zielcopy% /D:%Datum%
Vielen Dank für Eure Unterstützung !!!

Gruß
Marco
SteveNow
SteveNow 20.07.2011 um 09:51:09 Uhr
Goto Top
Zitat von @Razfaz:
Hallo,

super das hier hat nun so geklappt wie ich es haben wollte:
> @echo off & setlocal 
> 
> set "Datum=%date:~3,2%-%date:~0,2%-%date:~-4%   
> set "quelcopy=C:\*.ini"    
> set "zielcopy=\\172.22.12.40\Dateien\*.*"    
> xcopy %quelcopy% %zielcopy% /D:%Datum%
> 
Vielen Dank für Eure Unterstützung !!!

Gruß
Marco

Grüße!
Wie kann ich denn das Script so verändern, dass ich eine Rückmeldung bekomme wenn das kopieren abgeschlossen ist?

Mfg
Skyemugen
Skyemugen 20.07.2011 um 10:00:50 Uhr
Goto Top
Aloha SteveNow, du Totengräber *fg*

setze doch als Zeile 07-09 noch folgendes ran
echo Kopieren abgeschlossen
pause
goto :eof

Zeile 7/1 ist klar, oder?
Zeile 8/2 bewirkt, dass du eine beliebige Taste drücken must, um fortzufahren, was verhindert, dass es automatisch beendet wird und du das echo nicht lesen könntest
Zeile 9/3 ist einfach nur ein sauberes Beenden des Skriptes face-wink

greetz André
SteveNow
SteveNow 20.07.2011 um 10:09:39 Uhr
Goto Top
Zitat von @Skyemugen:
Aloha SteveNow, du Totengräber *fg*

Oha ich kann Threads zum Leben erwecken :D

setze doch als Zeile 07-09 noch folgendes ran
echo Kopieren abgeschlossen
> pause
> goto :eof

Zeile 7/1 ist klar, oder?
Zeile 8/2 bewirkt, dass du eine beliebige Taste drücken must, um fortzufahren, was verhindert, dass es automatisch beendet
wird und du das echo nicht lesen könntest
Zeile 9/3 ist einfach nur ein sauberes Beenden des Skriptes face-wink

greetz André

Super,, hab ich gecheckt face-smile
Danke !

Werd ich gleich mal probieren
SteveNow
SteveNow 20.07.2011 um 17:42:00 Uhr
Goto Top
Zitat von @SteveNow:
> Zitat von @Skyemugen:
> ----
> Aloha SteveNow, du Totengräber *fg*

Oha ich kann Threads zum Leben erwecken :D
>
> setze doch als Zeile 07-09 noch folgendes ran
>
echo Kopieren abgeschlossen
> > pause
> > goto :eof
>
> Zeile 7/1 ist klar, oder?
> Zeile 8/2 bewirkt, dass du eine beliebige Taste drücken must, um fortzufahren, was verhindert, dass es automatisch
beendet
> wird und du das echo nicht lesen könntest
> Zeile 9/3 ist einfach nur ein sauberes Beenden des Skriptes face-wink
>
> greetz André

Super,, hab ich gecheckt face-smile
Danke !

Werd ich gleich mal probieren

Soo.. hat prima funktioniert, habe es dann noch etwas erweitert / angepasst

[Code]
@echo off & setlocal
set "Datum=%date:~3,2%-%date:~0,2%-%date:~-4%
set "quelcopy=M:\*.dat"
set "zielcopy=F:\*.*"
echo Kopiere DAT-Files
xcopy %quelcopy% %zielcopy% /D:%Datum%

echo Kopieren von DAT-Files abgeschlossen
echo.
echo.
echo Kopiere R32-Files
set "Datum=%date:~3,2%-%date:~0,2%-%date:~-4%
set "quelcopy=M:\*.R32"
set "zielcopy=F:\*.*"
xcopy %quelcopy% %zielcopy% /D:%Datum%
echo.
echo.
echo.
echo Kopieren abgeschlossen
echo.
echo.
pause
goto :eof
[/code]

ich hätte nur gerne noch eine if-abfrage drine,
wenn 0 dateien kopiert werden soll die CMD rot werden mit " echo Keine Messung gefunden"
sonst "echo Erfolgreich und cmd in grün"
wie mach ich das?
Skyemugen
Skyemugen 20.07.2011 um 19:53:20 Uhr
Goto Top
Aloha,

nun, ich gehe mal einen anderen Weg, denn immer dieses, wenn xcopy nichts kopiert, dann ... nunja es ist umständlich, wenn man nur von xcopy ausgeht, daher mein Vorschlag mit einer generellen Schleife (da sich für beide Dateitypen bei dir dergleiche Zielpfad ergibt)

@echo off & setlocal
set "Quelle=M:\"  
set "Ziel=F:\"  
set "Typ=*.dat *.R32"  

set /a Anzahl=0
for /r "%Quelle%" %%s in (%Typ%) do (  
	echo %%~ts|findstr %date%>nul && xcopy "%%s" "%Ziel%">nul && set /a Anzahl+=1  
)
if %Anzahl%==0 (
color 4F
echo Keine Messung gefunden
echo\
) else (
color 2F
echo Kopieren erfolgreich
echo\
)
pause
goto :eof

Allerdings wird jetzt die Mitteilung natürlich nicht die Dateitypen unterscheiden, wo was nicht kopiert wurde, sondern generell aber man kann das ganze ja auch 2x machen, mit nur einem Dateitypen face-wink wenn man unbedingt muss.

Nebenbeibemerkt, wäre es besser gewesen, dies in einem neuen Thread zu behandeln aber was soll's, nun ist's auch egal und es ist ja durchaus eine andere Methode xcopy Dateien mit aktuellen Datum zu benutzen ^_^

greetz André