Gast Flipshot Geschrieben 26. November 2003 Melden Teilen Geschrieben 26. November 2003 Bei uns im Unternehmen wird folgendes Script für die Datensicherung mittels NTBackup verwendet: @Echo Off Set Server=RVRWSV02 For /f "delims=" %%i In (C:\NTBackup\Bandzyklus.txt) Do Set Tape=%%i Start /wait NTBackup.exe Backup "@C:\Dokumente und Einstellungen\Administrator\Lokale Einstellungen\Anwendungsdaten\Microsoft\Windows NT\NTBackup\data\%Server%.bks" /n "%Server% - %Tape%" /d "%Server% (Mo. - Fr. 23:00)" /v:no /r:no /rs:no /hc:on /m normal /j "%Server%.job" /l:s /p "4mm DDS" /um Start /wait Net Stop Wechselmedien Start /wait Net Start Wechselmedien RSM Eject /pf"%Server% - %Tape% - 1" /astart If "%Tape%"=="Montag 1" Set NextTape=Dienstag 1 If "%Tape%"=="Dienstag 1" Set NextTape=Mittwoch 1 If "%Tape%"=="Mittwoch 1" Set NextTape=Donnerstag 1 If "%Tape%"=="Donnerstag 1" Set NextTape=Freitag 1 If "%Tape%"=="Freitag 1" Set NextTape=Montag 2 If "%Tape%"=="Montag 2" Set NextTape=Dienstag 2 If "%Tape%"=="Dienstag 2" Set NextTape=Mittwoch 2 If "%Tape%"=="Mittwoch 2" Set NextTape=Donnerstag 2 If "%Tape%"=="Donnerstag 2" Set NextTape=Freitag 2 If "%Tape%"=="Freitag 2" Set NextTape=Montag 1 Echo %NextTape% > "C:\NTBackup\Bandzyklus.txt" Das aktuelle Band wird hierbei aus der Datei "Bandzyklus.txt" gelesen und anschließend das Band für den nächsten Tag in der Datei gespeichert. Leider passiert es hierbei des öfteren, dass anstelle des Bandnamens (z. B. Montag 1) immer "ECHO ist ausgeschalten (off)" drin steht. Weiss jemand, warum das der Fall sein könnte, zumal es ja nicht immer passiert. Gruß Flip Zitieren Link zu diesem Kommentar
Dschonny 15 Geschrieben 26. November 2003 Melden Teilen Geschrieben 26. November 2003 hmm, lang ist's her das ich was damit gemacht habe, aber meiner Meinung nach liegt das einfach an deinem @Echo off am Anfang.. Schreib doch mal vor die letzte Zeile ein @Echo On Gruß, Dschonny Zitieren Link zu diesem Kommentar
Gast Flipshot Geschrieben 26. November 2003 Melden Teilen Geschrieben 26. November 2003 Der Tipp mit dem "Echo on" war gut. Warum kommt man auf so einfach Sachen net selber. Problem war, dass beim Schreiben in die Datei an den Text noch ein Leerzeichen angehangen wird, welches dann am Folgetag mit ausgelesen wird. Beim Vergleich wird nun natürlich ein String mit Leerzeichen mit einem String ohne Leerzeichen am Schluss verglichen, folglich bleibt die Variabel %NextTape% leer und es wird nur ECHO ausgeführt. Gruß Flip Zitieren Link zu diesem Kommentar
auer 10 Geschrieben 27. November 2003 Melden Teilen Geschrieben 27. November 2003 Das mit dem Echo ist bloß ein Workaround. Das eigentliche Problem läßt sich durch den Ausdruck for /f "tokens=*" %%i In ... lösen. Denn dann steht in der Variablen %%i die gesamte Zeile drin, nicht nur die erste Zeichenfolge bis zum Standardtrenner Leerzeichen. Mit "delims=" ein 'Nicht-Zeichen' als Trenner anzugeben funktioniert nicht. ------------- Gruß, Auer Zitieren Link zu diesem Kommentar
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.