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 - Archiv überschreiben

Mitglied: Dani

Dani (Level 5) - Jetzt verbinden

05.01.2007, aktualisiert 06.01.2007, 4339 Aufrufe, 13 Kommentare

Hallo zusammen,

ich schreibe zur Zeit einen kl. Batch, der bestimmte configs usw... sichert. Soweit funktioniert das Ganze auch. Erlegt jede Woche ein Archiv (name1, name2,usw). Doch wenn er bei 10 angekommen ist, soll er wieder das name1 überschreiben. Also ein ständiger Kreislauf.
OS ist Windows Server 2003 EE.
Warum ich das Ganze mache, ganz einfach uns "tolles" Backupprogramm hat manchmal einen Hänger. Somit habe ich mich entschlossen, dieses gegen ein paar Zeilen Batch zuersetzen und Geld zusparen.


Gruß
Dani
Mitglied: bastla
05.01.2007 um 18:05 Uhr
Hallo Dani!

Du könntest es so anlegen, dass Du (nachdem alle 10 Dateien erstellt wurden) jeweils die älteste .zip-Datei suchst, diese löschst und den frei gewordenen Dateinamen für die neue .zip-Datei verwendest - etwa so:
01.
echo off & setlocal 
02.
for /f %%i in ('dir D:\Sicherungen\*.zip /b /o-d') do set Letzte=%%i 
03.
del D:\Sicherungen\%Letzte% 
04.
move D:\Sicherungen\Temp\neu.zip D:\Sicherungen\%Letzte%
Verbesserungen/Verschönerungen (wie etwa noch eine Variable für den Pfad, Logging, etc) fallen Dir (oder jedenfalls Biber) dazu sicher noch ein.

Grüße
bastla
Bitte warten ..
Mitglied: Dani
05.01.2007 um 18:10 Uhr
Hi,
vielen Dank...so siehts schon mal gut aus.
Aber wenn ich das heute starte, legt er name1 an. So nun läuft es morgen wieder. Dann erkennt morgen name1 als ältestes Archiv!


Gruß
Dani
Bitte warten ..
Mitglied: bastla
05.01.2007 um 18:16 Uhr
Hallo Dani!

Etwas anschieben musst Du schon ... Die Skizze ist für den laufenden Betrieb gedacht (nachdem alle 10 Dateien erstellt wurden). Dann werden diese 10 Dateinamen in einer "Rotation" verwendet.

Grüße
bastla
Bitte warten ..
Mitglied: Dani
05.01.2007 um 18:25 Uhr
Hi,
stimmt...ich könnte einfach 10 dateien anlegen mit der Endung .rar. Diese werden dann überschrieben! Ich teste das mal in Ruhe und melde mich dann wieder!


Gruß
Dani
Bitte warten ..
Mitglied: bastla
05.01.2007 um 18:25 Uhr
So, als Starthilfe:

01.
echo off & setlocal 
02.
set Neue=0 
03.
for /l %%i in (10,-1,1) do if not exist D:\Sicherungen\Name%%i.zip set Neue=%%i 
04.
if [%Neue%]==[0] goto :Rotation 
05.
move D:\Sicherungen\Temp\neu.zip D:\Sicherungen\Name%Neue%.zip 
06.
goto :eof 
07.
:Rotation 
08.
for /f %%i in ('dir D:\Sicherungen\Name*.zip /b /o-d') do set Letzte=%%i 
09.
del D:\Sicherungen\%Letzte% 
10.
move D:\Sicherungen\Temp\neu.zip D:\Sicherungen\%Letzte%
Grüße
bastla

[Edit] Pfad bei "if not exist ..." ergänzt [/Edit]
Bitte warten ..
Mitglied: Dani
05.01.2007 um 18:50 Uhr
Hi,
hab's erst gerade gesehen! So ungefähr sieht mein Batch auch aus. Ich ergänz ihn einfach mal um 1 oder 2 Zeilen.
Vielen Dank! Wünsch dir n schönes Wochenende!


Gruß
Dani
Bitte warten ..
Mitglied: Biber
05.01.2007 um 20:42 Uhr
Hm, Dani,

wenn Du eh noch am Basteln bist...
bastla's :rotation geht ein bisschen in die Grütze, wenn noch gar keine Datei name*zip existiert.
Tritt zwar wirklich nur beim allerallerersten Mal auf, aber da es ja nun die Zeilenanzahl verdoppelt, würde ich diesen Fall berücksichtigen

01.
... 
02.
:Rotation 
03.
if exist D:\Sicherungen\Name*.zip ( 
04.
    for /f %%i in ('dir D:\Sicherungen\Name*.zip /b /o-d') do set Letzte=%%i 
05.
) ELSE ( 
06.
Set Letzte=name1.zip 
07.
08.
IF exist D:\Sicherungen\%Letzte% del D:\Sicherungen\%Letzte% 
09.
move D:\Sicherungen\Temp\neu.zip D:\Sicherungen\%Letzte%
@bastla
Und Du hast Recht: Die Angaben für den Sicherungspfad und die Namens-Patterns hätte ich auch in Variablen gepackt.
Will doch nicht 10 Zeilen ändern, wenn sich eine Pfadangabe ändert... Und wenn, schreib ich einen Batch dafür

Grüße
Biber
Bitte warten ..
Mitglied: bastla
05.01.2007 um 20:54 Uhr
@Biber
War nur auf die Schnelle hingeschrieben (den Pfad hatte ich nur zur Verdeutlichung noch nachgereicht)

bastla's :rotation geht ein bisschen in die Grütze, wenn noch gar keine Datei name*zip existiert.
Einspruch, Euer Biber - die Routine :rotation wird (in der zweiten Fassung oben) ja nur erreicht, wenn es keine freien Dateinamen von Name10 bis Name1 mehr gibt (und für die erste Fassung gilt das Kleingedruckte: nachdem alle 10 Dateien erstellt wurden) ...

Grüße
bastla
Bitte warten ..
Mitglied: Biber
05.01.2007 um 21:34 Uhr
Nö, nö, bastla,

Einspruch abgelehnt.
01.
set Neue=0 
02.
for /l %%i in (10,-1,1) do if not exist D:\Sicherungen\Name%%i.zip set Neue=%%i 
03.
if [%Neue%]==[0] goto :Rotation 
04.
...
..wenn gar keine einzige name*.zip existiert, dann geht er wohl in die :Rotation.
Und kommt da ins Rotieren.
Aber klar, ein wenig spitzfindig ist es natürlich schon...

Ich finde Dani's grünen Haken vollauf gerechtfertigt und wenn er diese Frage nicht in "Betriebssysteme" gesetzt hätte,
hätte ich den Thread auch schon geschlossen.

Also, schönen Feierabend jetzt
Biber
Bitte warten ..
Mitglied: bastla
05.01.2007 um 21:44 Uhr
@Biber

Nicht, dass wir uns noch im Kreis drehen , aaaber: Hast Du das wirklich mit dem Erfolg getestet, dass %Neue% nach der "for /l ..."-Zeile den Wert 0 hat? Bei mir endet es, wie es soll, damit, dass in %Neue% 1 steht (die Nummer der letzten der "nicht existenten" Dateien Name10.zip, Name9.zip, ..., Name1.zip)

Grüße
bastla
Bitte warten ..
Mitglied: Biber
05.01.2007 um 22:22 Uhr
@bastla
Uuups - hast Recht.
Nehme alles zurück.
Keine Anpassungen nötig - und sollte mir in diesem oder nächsten Jahr endlich mal Urlaub bewilligt werden, wäre ich hocherfreut, wenn Du hier meine Urlaubsvertretung übernimmst.

Gruß
Biber
Bitte warten ..
Mitglied: Dani
06.01.2007 um 00:26 Uhr
Hi,
Ich finde Dani's grünen Haken vollauf gerechtfertigt und wenn er diese Frage nicht
in "Betriebssysteme" gesetzt hätte, hätte ich den Thread auch schon geschlossen.
Also irgendwas stimmt hier im Forum nicht. Ich habe den Thread nämlich 1000%ig unter Entwicklung => Batch & Shell hinterlegt. Komisch....mal weiter drauf achten. Denn zur Zeit sind viele Threads im Bereich "Betriebsysteme", die da gar nicht hingehören!


Gruß
Dani
Bitte warten ..
Mitglied: bastla
06.01.2007 um 14:36 Uhr
@Biber
... sollte mir in diesem oder nächsten Jahr endlich mal Urlaub bewilligt werden ...
Was willst Du denn mit dem Zeug? Urlaub ist doch das, was im Herbst im Urwald am Boden rumliegt, oder war da noch was anderes ...?
Urlaubsvertretung
Findest Du das als Strafe für ein ganz klein wenig Rechthaberei nicht etwas heftig?

Aber Spass beiseite, natürlich fühle ich mich sehr geehrt.

Grüße
bastla
Bitte warten ..
Ähnliche Inhalte
Batch & Shell

Linie mit Leer überschreiben (Batch)

gelöst Frage von clragonBatch & Shell3 Kommentare

Hey ihr Batch-ler da draußen! Ich entwickle grad meinen Eigenen Batch Safe auf Professionellem Level, also ECHTE Verschlüsselungen ( ...

Batch & Shell

Batch: Files verschieben ohne Überschreiben der Bestehenden

Frage von maegeeBatch & Shell1 Kommentar

Guten Morgen Ich soll auf einem Server einen Job mit Hilfe eines Batch-Scripts einrichten. Das Script soll vor jedem ...

Batch & Shell

Dateitypen aus Archiven löschen via Batch!

Frage von Nightowl71Batch & Shell5 Kommentare

hallo meine freunde! ich möchte bestimmte dateitypen vll an hand einer *.txt aus archiven via batch löschen! was ich ...

Backup

Datensicherung ARCHIV

Frage von fautec56Backup12 Kommentare

Fileserver Betriebssystem 2008 R2 Standard Wir haben auf unserem Fileserver ein Archiv eingerichtet. ( PDF-Dateien) Dieses Archiv wird mit ...

Neue Wissensbeiträge
Windows Server

SBS 2011: Installation von KB4457144 schlägt beim Reboot fehl - Von Dienst gesperrte Schriftart ursächlich

Tipp von the-buccaneer vor 6 StundenWindows Server

Moinsen zusammen! Das hat mich einige graue Haare gekostet: Ein SBS 2011 weigerte sich schon im August, das monatl. ...

Windows Netzwerk
Browser-Lags und IPv6
Erfahrungsbericht von NixVerstehen vor 12 StundenWindows Netzwerk1 Kommentar

Hallo zusammen, wir betreiben als kleines Speditionsunternehmen ein überschaubares Windows-Netzwerk mit Win10-Clients sowie einem Server 2016 Essentials als "eierlegende ...

Humor (lol)

Erstaunlich, Windows mit extremer Laufzeit (Server) lol

Tipp von mathu vor 14 StundenHumor (lol)5 Kommentare

Was es so alles gibt. :-)

Windows Netzwerk

CGM Praxisarchiv funktioniert auf Clients nach Update auf 4.14 nicht mehr

Tipp von MOS6581 vor 1 TagWindows Netzwerk

Moin, ein Kunde setzt das CGM-Praxisarchiv ein. Mehrplatzinstallation mit SQL-Server. Nachdem letzte Woche auf die 4.14 aktualisiert wurde, funktionierte ...

Heiß diskutierte Inhalte
Hyper-V
Windows Serer 2016 Standard virtualisieren
gelöst Frage von fritte87Hyper-V33 Kommentare

Hallo zusammen, ich muss für eine kleine Firma ein entsprechendes neues kleines Konzept bauen. Ich habe einen Server Standard ...

LAN, WAN, Wireless
Kombiniere mehrere 4G Router zu einem Netzwerk - Anwendung kleine LAN (10-20 Leute)
Frage von HulkTheHeroLAN, WAN, Wireless24 Kommentare

Guten Mittag liebes Administrator - Fourm, ich hoffe ich habe das richtige Thema ausgewählt - ansonsten bitte gerne verschieben ...

Windows Server
Fileserver von 2012 R2 auf 2012R2
gelöst Frage von ThabeusWindows Server23 Kommentare

Moin moin, leider war in der Vergangenheit der Fokus des Betriebs nicht auf Langfristigkeit ausgelegt. Daher stehe ich jetzt ...

Router & Routing
Größere Zahl VPN-Verbindungen mit Fritz-Box einrichten
Frage von miscmikeRouter & Routing15 Kommentare

Hallo Zusammen, ich supporte verschiedene Kunden mit bestehenden LAN-LAN-Kopplungen via FritzBox (7490, FritzOS 7.01) . Anwendungen sind z.B. Kaspersky-KSC ...