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

Umschiffen von folgendem Problem -xyz- ist syntaktisch an dieser Stelle nicht verarbeitbar - und raus-bist-du.

Frage Entwicklung Batch & Shell

Mitglied: 67860

67860 (Level 1)

28.07.2008 um 00:10 Uhr, 6582 Aufrufe

Hallo.

Danke für die Aufnahme bei Administrator.de.

Ich bin schon seit längerem an einem Projekt, das einen Diskimager per Batch steuert. Es liest seine Parameter über eine Textdatei ein, checkt, ob Quelle/Ziel verfügbar ist, erstellt abschließend ein Protokoll und tut sonst noch diverse Dinge. Durch Tipps und Schnipsel von Adminstrator.de und Einsatz weiterer externer Programme versuche ich, dieses Script auf möglichst vielen Rechnern zum Laufen zu bekommen. Win XP Home/Pro, Server 2000/2003, Vista (Wobei ich noch nicht alle Vista Ausgeburten getestet habe). Nun passiert es gelegentlich, dass mir immer wieder mal ein PC zwischen die Finger kommt, der ein Problem bei for-Schleifen und Set-Kommandos hat. Es tritt oben genannte Fehlermeldung auf, und statt dass die Batch nun weiterhumpelt und die Datensicherung irgendwie erledigt, beendet sie sich einfach. Ich habe dann meist sehr wenig Zeit für Troubleshoot und muss dann immer fix die Batch schnell umstricken und beispielsweise auf den Part "Datums- und Zeitvariablen im Batch - von Biber" (hier taucht der Fehler am meisten auf) verzichten.

Nun habe ich begonnen, diversen Code in kleinere Batches auszulagern und mit Call Aufrufen zu arbeiten, da es das Hauptscript übersichtlicher macht und ich ggfs. flexibler auf unvorhergesehene Ereignisse reagieren kann. Womit ich nun langsam zum Ende meines Romans komme: Wenn ich nun innerhalb eines Calls einen "Austeiger" habe, brauche ich sicher nicht zu schildern, was mit meinem Hauptscript passiert. Mit Start /wait ist genauso Essig, weil mein Script dann halt eben auf die abgestürzte Dose wartet. Da die Zeitmaschine (so habe ich das geile Script von Biber genannt) eine absehbare Zeit dauert, könnte ich das Ding mittels einer Kombination aus Start %pfad%\zeitmaschine.bat /s/q und ping localhost -n x lösen. Zusätzlich könnte ich eine vorher erstellte Kontrolldatei am Ende der mittels Call aufgerufenen Batch löschen lassen und bei nichtvorhandensein von einem erfolgreichen Verlauf ausgehen. Ist aber alles Käse.

Wobei ich die Leser hier um Mithilfe bitte: Ich würde gern aus meinem Datensicherungsscript heraus weitere Dos-Boxen starten, deren unvorhergesehene Abbrüche gleich welcher Art nicht den weiteren Verlauf meines Hauptscriptes stören. Außerdem müsste noch einen Timeout für den Fall einer hängenden Box rein (Stichwort Dienste beenden und einer will nicht). Den Mißerfolg (evtl. auch den Erfolg) würde ich gern mittels einer frei definierbaren Variabel weiterverarbeiten können. Bitte denkt dran: ich möchte den Stein nicht aus dem Weg räumen, sondern ihn umgehen. Lässt sich diese Nuß knacken?

Mein Wunschdenken:

Datensicherungssrcipt DaSi.bat verrichtet seine Arbeit.
DaSi.bat startet mit call die kontrollscript.bat und wartet auf dessen Rückmeldung.

kontrollscript.bat startet DasHierFunktNormalerweiseKönnteAberMitSyntaxErrorInsNirvanaVerschwinden.bat
kontrollscript.bat wartet auf dessen Ausfürung und gibt folgende Variablen zurück:
%erfolg%, %misserfog%, %DieDox-BoxIstNichtAbgestürtztAberSchonSeitEinerHalbenStundeAmGangeUndWirdDaherBeendet%

DaSi.bat nimmt Notiz davon, handelt entsprechend und macht die Datensicherung.

Grüße,

Kahlimero
Ähnliche Inhalte
Windows Update
WSUS Problem, einige Clients ziehen keine Updates mehr (7)

Frage von Leo-le zum Thema Windows Update ...

LAN, WAN, Wireless
Problem mit W-LAN Einbindung bei UniFi AP-AC-Mesh (1)

Frage von mayli01 zum Thema LAN, WAN, Wireless ...

Visual Studio
gelöst VB bestimmte Stelle im Bild highlighten wenn MouseOver Textbox? (9)

Frage von PixL86 zum Thema Visual Studio ...

Neue Wissensbeiträge
Heiß diskutierte Inhalte
Viren und Trojaner
Ransomware .nm4 (14)

Frage von Zyklo92 zum Thema Viren und Trojaner ...

Microsoft Office
+1.000 Ordner in Outlook: Wie besser? (11)

Frage von Matsushita zum Thema Microsoft Office ...

Zusammenarbeit
Administrator Verhalten nach Vertragskündigung (10)

Frage von sysbone zum Thema Zusammenarbeit ...