Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Batch script zum Ordner gegeneinander prüfen und kopieren

Frage Entwicklung Batch & Shell

Mitglied: SaschaRD

SaschaRD (Level 1) - Jetzt verbinden

15.04.2013 um 11:07 Uhr, 1844 Aufrufe, 3 Kommentare

Hallo zusammen,
ich möchte mit einem batch script einen Ordner kopieren. Der Ordner soll jedoch nur dann kopiert werden, wenn es eine Änderung gab (am besten über ein Datumsabgleich).
Ordner1 wird täglich neu erstellt (gibt es aber einen Fehler, bleibt der Ordner1 vom Vortag bestehen). Ordner2 ist das Ziel.

Anwendung 1:
Ordner1 wurde am 11.11.2011 neu erstellt; batch script kommt und überprüft an Hand des Datumsattributes ob Ordner1 aktueller ist als Ordner2(ist vom 10.11.2011). Wenn ja, dann lösche Ordner2 und kopiere Ordner1.

Anwendung2:
Ordner1 wurde am 11.11.2011 nicht neu erstellt; batch script kommt und überprüft an Hand des Datumsattributes ob Ordner1 aktueller ist als Ordner2. Wenn nicht, dann brech den Vorgang ab.
Anwendung3:
Ist Ordner1 überhaupt nicht vorhanden, brech den Vorgang ab. (Habe ich bereits als Code erzeugt).

Hier ein Auszug:
set ORDNER1 =”c:\temp_backup\dailybackup”
set ORDNER2 =“d:\backups\database“
::
:: check folder
::
IF NOT EXIST %ORDNER1% goto abort | echo %time%: folder %ORNDER1% does not exist >> %LOGFILE%
IF EXIST (
) ELSE ( goto abort
)

:changed
echo %time%: deleting %ORDNER2% >> %LOGFILE%
IF EXIST %ORDNER2% rmdir /s /q %ORDNER2% goto copy

:copy
echo %time%: copy backup directory from %ORDNER1% into %ORNDER2% >> %LOGFILE%
xcopy /S/E/Y %ORDNER1% %ORNDER2% | exit

:abort
echo %time%: abort >> %LOGFILE%

Hat jemand eine Ahnung wie ich die Ordner gegeneinander prüfe? Habe es über xcopy /M versuchte; jedoch ohne Erfolg.
Mitglied: Penny.Cilin
15.04.2013, aktualisiert um 11:24 Uhr
Moin,

warum nimmst Du nicht Robocopy? Dafür ist das gute Teil da. Schau Dir die Syntax mit
robocopy /? | more
an. Und nutze die Suchfunktion. Wenn Du weitere Fragen hast, melde Dich nochmal.
Hast Du es schonmal mit XCOPY /D versucht?

[EDITH] Und außerdem, Codeformatierungen machen das lesen leichter


Gruß Penny.
Bitte warten ..
Mitglied: SaschaRD
17.04.2013 um 14:12 Uhr
Hallo,

warum nimmst Du nicht Robocopy?

Robocopy kommt für meinen Anwendungsfall nicht in Frage.


[EDITH] Und außerdem, Codeformatierungen machen das lesen leichter

Danke für den Tipp!

Für die, die auch nach einer Lösung gesucht haben, habe ich hier was gebastelt:
01.
for /f "delims= " %%a in ('dir %CHECK% /t:c^|findstr /i /l "setup.exe"') do ( 
02.
	for /f "delims= " %%b in ('dir %AGAINST% /t:c^|findstr /i /l "setup.exe"') do ( 
03.
		IF /i %%a EQU %%b ( echo version check: %%a and %%b are equal || goto cancel 
04.
		) ELSE echo version check: %%a and %%b are not equal || goto install 
05.
06.
07.
)
Ihr müsst natürlich eure set-, goto-pfade und die echo-Ausgabe anpassen.

Wenn Ihr Fragen habt, einfach melden.

Gruß, Sascha
Bitte warten ..
Mitglied: SaschaRD
05.12.2013 um 09:40 Uhr
Hier ist nochmal ein Update von der Version:
es gab Schwierigkeiten während eines Monatswechsel! Habe es dann wie folgt umgeschrieben..

01.
FOR /f "tokens=1,2,3 delims=. " %%a in ('dir %CHECK%/t:c^|findstr /i /l "setup.exe"') do set A144=%%b.%%a.%%c 
02.
	FOR /f "tokens=1,2,3 delims=. " %%a in ('dir %AGAINST%/t:c^|findstr /i /l "setup.exe"') do set A215=%%b.%%a.%%c 
03.
		IF /i %A215% GEQ %A144% ( echo %time%: A215: %A215% and A144: %A144% are equal... stop installation... >> %LOGFILE% & goto cancel 
04.
			) ELSE echo %time%: A215: %A215% and A144: %A144% are differnt... start install process... >> %LOGFILE% & goto install
Falls es Fragen zu dem Code gibt einfach melden.

Gruß, Sascha
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Bitte batch-Script auf Fehler prüfen
Frage von maniacmacpainBatch & Shell1 Kommentar

Hallo, ich habe ein kleines Script geschrieben, welches zuerst prüfen soll ob der vpn-Server erreichbar ist. Mit diesem soll ...

Batch & Shell
Batch aktuellsten Ordner kopieren
gelöst Frage von MmarKussBatch & Shell2 Kommentare

Hallo @ all Problembeschreibung Ich habe einen Ordner, in welchem alle Daten in ojektbezogenen Unterordnern abgespeichert sind. (D:\Data_all ) ...

Batch & Shell
Script zum Ordner kopieren pro Tag
gelöst Frage von 113726Batch & Shell18 Kommentare

Hallo, ich möchte mir ein einfaches Script basteln, weiß aber nicht richtig weiter Das Script soll jede Nacht 2 ...

Batch & Shell
Batch Script soll aus einer Datei ein Zeileninhalt in ein anderen Batch kopieren und erweitern
Frage von Fazer1000Batch & Shell4 Kommentare

Hallo ich habe keine erfahrung mit Batch Script. Ich möchte gerne mit Hilfe eines Scriptes ein Befehl erzeugen der ...

Neue Wissensbeiträge
Mac OS X

MacOS wo ist die Tilde ?

Tipp von Alchimedes vor 12 StundenMac OS X1 Kommentar

Hallo, ich hab eine MacOS qwertz Keyboard auf US Layout umgestellt da die Sonderzeichen besser erreichbar sind. Leider fehlt ...

Datenschutz

Weitere Informationen zum Sicherheitsproblem BeA

Information von Penny.Cilin vor 19 StundenDatenschutz

Im folgenden ein weiterer Bericht über die Sicherheitsprobleme von Bea. Fataler Konstruktionsfehler im besonderen elektronischen Anwaltspostfach Gruss Penny

Windows 10

Systemdienste behalten nach Win10 inplace-Upgrade nicht die ggf. modifizierte Startart bei

Tipp von DerWoWusste vor 20 StundenWindows 103 Kommentare

Stellt Euch vor, Ihr habt ein Win10 System und modifiziert dort die Startart von Systemdiensten. Zum Beispiel wollt Ihr ...

Microsoft Office

Deaktivieren von Startbildschirm und Backstage-Ansicht in Office 2016 per Batch-Datei

Anleitung von SarekHL vor 23 StundenMicrosoft Office17 Kommentare

Guten Morgen zusammen! Ich habe mir gestern (auch mit Hilfe dieses Boards) ein Script gebastelt, um in Office 2016 ...

Heiß diskutierte Inhalte
Netzwerke
NTFS-Berechtigung
Frage von Daoudi1973Netzwerke23 Kommentare

Hallo zusammen und frohes neues Jahr (Sorry, ich bin spät dran) Meine Frage: 1- Ich habe einen Ordner im ...

Batch & Shell
AD-Abfrage in Batchdatei und Ergebnis als Variable verarbeiten
gelöst Frage von Winfried-HHBatch & Shell19 Kommentare

Hallo in die Runde! Ich habe eine Ergänzungsfrage zu einem alten Thread von mir. Ausgangslage ist die Batchdatei, die ...

Windows 10
Netbook erkennt Soundkarte nicht - keinerlei Info zum Hersteller und Modell vom Netbook und Hardware bekannt
Frage von fyrb38Windows 1018 Kommentare

Guten Tag, meine Schwester reist in einigen Wochen für ein paar Monate ins Ausland und hat sich dafür ein ...

Microsoft Office
Deaktivieren von Startbildschirm und Backstage-Ansicht in Office 2016 per Batch-Datei
Anleitung von SarekHLMicrosoft Office17 Kommentare

Guten Morgen zusammen! Ich habe mir gestern (auch mit Hilfe dieses Boards) ein Script gebastelt, um in Office 2016 ...