Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

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

Script zum Ordner kopieren pro Tag

Frage Entwicklung Batch & Shell

Mitglied: 113726

113726 (Level 2)

29.07.2014 um 11:51 Uhr, 4564 Aufrufe, 18 Kommentare, 7 Danke

Hallo,

ich möchte mir ein einfaches Script basteln, weiß aber nicht richtig weiter..

Das Script soll jede Nacht 2 Ordner auf eine andere Partition kopieren.

Es sollte auf der zweiten Partition aber so angelegt werden, das ich pro Tag einen Ordner oder so habe. Das also die Daten nicht imemr überschrieben werden.

Eventuell ist es ja sogar möglich, durch das Script automatisch als Archiv zu packen.

Wie müsste ich da vorgehen?

Bisher habe ich:


@Echo off
xcopy C:\ProgramData\Lexware\premium\DB\ D:\Ordnersicherung\
xcopy C:\ProgramData\Lexware\premium\DB2\ D:\Ordnersicherung\
Exit

Vielen Dank im Voraus.

Gruß
Manuel
Mitglied: narthan
LÖSUNG 29.07.2014, aktualisiert 30.07.2014
Moin Manuel,

hier ein Bsp. Batch-Script von mir:

01.
@echo off 
02.
 
03.
set ordner1="C:\TestOrdner1" 
04.
set ordner2="C:\Testordner2" 
05.
 
06.
xcopy /e %ordner1% "D:\Ordner_%date%\" 
07.
xcopy /e %ordner2% "D:\Ordner_%date%\" 
08.
 
09.
"C:\Program Files\7-Zip\7z.exe" a -r archivname_%date%.zip "D:\Ordner_%date%\*" 
10.
 
11.
exit
Ich habe als Archivierungsprogramm 7zip genutzt, ist frei und kostenlos erhältlich, falls du es nicht bereits besitzt.
Mit der %date% Variable wird ein Ordner für den jeweiligen Tag, an dem das Skript ausgeführt wird erstellt.
Das Archiv wird dort abgelegt, wo sich das Script befindet....kannst du ja aber ganz einfach ändern, wenn du es woanders haben willst


Gruß, narthan
Bitte warten ..
Mitglied: 113726
29.07.2014 um 12:55 Uhr
Vielen Dank euch beiden.
Robocopy klingt gut, werde es aber erstmal mit der Variante von Narthan probieren.

@narthan: Danke für das Script.

Das werde ich so ausprobieren.

Eine frage habe ich noch.

Anfangs wird ja der Ordner erstellt, wo die beiden Ordner reinkopiert werden.
Dieser wird dann gezippt und verschoben.

Kann ich mittels rm -r Befehl dann einfach den erstellten Ordner löschen lassen?
Ich benötige ja in erster Linie nur die Zip Datei.

Also z.b. rm -r "Ordner_%date%"?

Gruß
Manuel

PS.: Gibt es eine Batchmöglichkeit, welches kontrolliert wie viel Dateien in einem Ordner sind und ab einer bestimmten Zahl dann die ältesten löscht?
bzw. kann man so was sogar in die Batch mit einbringen?

Sonst wird ja der Ordner unendlich groß, wenn man nicht manuell löscht.
Bitte warten ..
Mitglied: narthan
29.07.2014, aktualisiert um 13:11 Uhr
Heyho

Zitat von 113726:
Eine frage habe ich noch.
Kann ich mittels rm -r Befehl dann einfach den erstellten Ordner löschen lassen?
Ich benötige ja in erster Linie nur die Zip Datei.

Also z.b. rm -r "Ordner_%date%"?

Ja kannst du, wenn dir das Archiv reicht. Mit dem Befehl "rmdir" kannst du Verzeichnisse in Batch löschen, also z.B.:

01.
rmdir /s /q "D:\Ordner_%date%"
...hierbei ist jedoch zu beachten, dass er dank /s wirklich alles in dem Ordner und den Ordner selbst löscht und durch /q dies ohne Nachfragen erledigt.
Zu deiner PS-Frage weiß ich leider keine Antwort.


<E> Die Daten bzw Ordner sind mit rmdir dann übrigens wirklich weg, die landen nicht im Papierkorb </E>


Gruß, narthan
Bitte warten ..
Mitglied: 113726
29.07.2014, aktualisiert um 13:21 Uhr
Da in der Zip Datei ja dann beide Ordner täglich verpackt werden (und täglich die Zip Dateien nochmals gesichert werden), reicht mir das vollkommen.

Habe jetzt die Batchdatei noch erweitert und werde das diese Nacht bzw. morgen früh, wenn noch keiner da ist einmal testen und schauen, ob es klappt.

Melde mich

Besten Dank!
Bitte warten ..
Mitglied: bastla
LÖSUNG 29.07.2014, aktualisiert 30.07.2014
Hallo PM-Manuel und narthan!

Zum PS-Thema: Um die 7 neuesten ZIP-Dateien des Ordners "D:\ZIP-Dateien" zu behalten, etwa:
01.
for /f "skip=7 delims=" %%i in ('dir /b /o-d "D:\ZIP-Dateien\*.zip"') do echo del "D:\ZIP-Dateien\%%i"
Das "echo" dient dem gefahrlosen Testen ...
Noch eine Anmerkung zum Datum: Anstelle von %date% würde ich mir das Datum etwa so zusammenbauen (lässt sich leichter sortieren):
set "Datum=%date:~-4%-%date:~-7,2%-%date:~-10,2%"
Grüße
bastla
Bitte warten ..
Mitglied: 113726
29.07.2014 um 16:25 Uhr
Hallo bastia,

ich werde das morgen früh gleich mit testen, vielen Dank.

Mit dem Datum weiß ich aber nicht genau, was dein Befehl bewirkt.

Wenn ich raten würde, dann mein ich: 2014-07-29, stimmt das?
Wenn ja, dann ist das nicht verkehrt, da hast du recht.


Gruß
Manuel
Bitte warten ..
Mitglied: bastla
29.07.2014 um 16:48 Uhr
Hallo PM-Manuel!
Wenn ich raten würde, dann mein ich: 2014-07-29, stimmt das?
Gut geraten ...

Grüße
bastla
Bitte warten ..
Mitglied: 113726
29.07.2014 um 16:52 Uhr
Schöne Sache, also kopiere ich das einfach am Anfang der batch mit rein (vor set ordner1="C:\TestOrdner1"
) und kann dann ganz normal den Befehl %date% nutzen, richtig? ;)
Bitte warten ..
Mitglied: bastla
29.07.2014 um 16:59 Uhr
Hallo PM-Manuel!
kann dann ganz normal den Befehl %date% nutzen, richtig? ;)
Fast - die Variable heißt jetzt anstatt %date% natürlich %Datum% ...

Grüße
bastla
Bitte warten ..
Mitglied: narthan
30.07.2014 um 07:46 Uhr
Moin moin

Ach bastla, hätte mich auch gewundert, wenn ich deinen Namen nicht in diesem Thread gesehen hätte

Zitat von bastla:
Noch eine Anmerkung zum Datum: Anstelle von %date% würde ich mir das Datum etwa so zusammenbauen (lässt sich leichter
sortieren):
set "Datum=%date:~-4%-%date:~-7,2%-%date:~-10,2%" 
> 

Das ist allerdings besser, werd ich mir auch gleich mal für die Zukunft merken

Grüße, narthan
Bitte warten ..
Mitglied: 113726
30.07.2014 um 07:47 Uhr
Guten Morgen zusammen,

ich wollte nur kurz Rückmeldung geben, dass alles wunderbar funktioniert.

Habe das Script jetzt in die Aufgabenplanung eingebunden und lasse es heute Abend das erste mal automatisch laufen.


Vielen Dank noch mal für eure Hilfe.

Viele Grüße
Manuel
Bitte warten ..
Mitglied: narthan
30.07.2014 um 08:35 Uhr
Moin Manuel,

Top, das hört man doch gern! Dann kannst du ja die Frage schließen

Grüße, narthan
Bitte warten ..
Mitglied: 113726
30.07.2014 um 08:40 Uhr
Frage wird geschlossen

Vielleicht könnt ihr mir eine Info noch geben für die Zukunft.

Wenn ich jetzt an den Dateinamen der Zipdatei neben Datum auch die Uhrzeit mit anhängen würde wollen, wie müsste da die Variable heißen.
Die Zeit sollte dann so dargestellt werden: hhmmss

Ich brauche das für diese Zipdatei nicht, wäre trotzdem gut es für kommende Batchdateien zu wissen.

LG Manuel
Bitte warten ..
Mitglied: narthan
30.07.2014, aktualisiert um 08:54 Uhr
Hey

Zitat von 113726:
Wenn ich jetzt an den Dateinamen der Zipdatei neben Datum auch die Uhrzeit mit anhängen würde wollen, wie müsste da
die Variable heißen.
Die Zeit sollte dann so dargestellt werden: hhmmss

Das sieht in etwa so aus wie bastla's Code für das Datum:

01.
set "Zeit=%time:~0,2%-%time:~3,2%-%time:~6,2%"
<EDIT> bzw., wenn du keine Trennstriche zwischen hh-mm-ss haben möchtest (also nur hhmmss), dann so:
01.
set "Zeit=%time:~0,2%%time:~3,2%%time:~6,2%"
</EDIT>

Die Variable für den Dateinamen wär dann %Zeit%.

Grüße, narthan
Bitte warten ..
Mitglied: bastla
30.07.2014, aktualisiert um 09:38 Uhr
... und noch als Ergänzung: Mit einer zusätzlichen Zeile
set "Zeit=%Zeit: =0%"
sieht das für Zeiten vor 10:00 noch besser aus ...
Ach bastla, hätte mich auch gewundert, wenn ich deinen Namen nicht in diesem Thread gesehen hätte
Entschuldigung ...

Grüße
bastla
Bitte warten ..
Mitglied: narthan
30.07.2014 um 10:09 Uhr
Hey

Zitat von bastla:
Entschuldigung ...

Nicht falsch verstehen, ich find's super und warte schon immer auf deinen Post, weil du entweder die Lösung oder immer noch interessante Verbesserungsvorschläge bringst Also nicht entschuldigen!

Grüße, narthan
Bitte warten ..
Mitglied: bastla
30.07.2014 um 11:05 Uhr
[OT]
Hallo narthan!

War ja auch nicht ernst gemeint - aber trotzdem danke ...

Grüße
bastla
[/OT]
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(8)

Tipp von agowa338 zum Thema Windows 10 ...

Heiß diskutierte Inhalte
Microsoft
Ordner mit LW-Buchstaben versehen und benennen (20)

Frage von Xaero1982 zum Thema Microsoft ...

Outlook & Mail
gelöst Outlook 2010 findet ost datei nicht (19)

Frage von Floh21 zum Thema Outlook & Mail ...

Netzwerkmanagement
gelöst Anregungen, kleiner Betrieb, IT-Umgebung (18)

Frage von Unwichtig zum Thema Netzwerkmanagement ...

Festplatten, SSD, Raid
M.2 SSD wird nicht erkannt (14)

Frage von uridium69 zum Thema Festplatten, SSD, Raid ...