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

Befehl aus einer Batch-Datei nach einer bestimmten Zeit abbrechen und mit dem nächsten fortfahren

Frage Virtualisierung

Mitglied: stefanx

stefanx (Level 1) - Jetzt verbinden

20.08.2009, aktualisiert 15:03 Uhr, 8177 Aufrufe, 2 Kommentare

Hallo zusammen!

Folgendes Problem:

Ich habe einen NT4 Server und eine NT4 Workstation virtualisiert. Nun sollen die VMs per Batch abends herunterfahren und gesichert werden.

Bei den NT4 Maschinen hab ich schon probiert die HAL.dll mit der aus dem SP6a zu ersetzen und den Reg Eintrag poweroffaftershutdown auf 1 zu setzen, damit die Maschine ohne manuelles ausschalten herunterfährt. Jedoch ohne Erfolg.

Nun habe ich das Problem das der stop Befehl von vmware-cmd auf einen Rückgabewert von VMWare Server 1.0.9 wartet und diesen nicht bekommt, weil die Maschine schließlich nicht aus geht.

Hat jmd. eine Idee was ich noch machen könnte?? Vllt. Timeout einbauen, damit er den nächsten Befehl abarbeiten kann (z.B. dann stop hard damit die Machine aus geht)??

Gruß, Stefan
Mitglied: bastla
20.08.2009 um 15:47 Uhr
Hallo .stefan und willkommen im Forum!

Die folgende Skizze soll zeigen, wie ein "Befehl" (eine weitere Batchdatei) gestartet und nach Ablauf der angegebenen Zeit abgebrochen werden könnte:
01.
@echo off & setlocal 
02.
set "Dauer=20" 
03.
::Einheiten: s=Sekunden, n=Minuten 
04.
set "Einheit=s" 
05.
 
06.
set G=%GetTime.vbs 
07.
set "Zeit=%temp%\Zeit.txt" 
08.
set "Befehl=%temp%\Befehl.cmd" 
09.
 
10.
set "Titel=StillRunning" 
11.
>%Befehl%  echo @echo off ^& setlocal 
12.
>>%Befehl% echo pause 
13.
>>%Befehl% echo del %Zeit% 
14.
 
15.
>%G% echo WScript.Echo DateAdd("%Einheit%","%Dauer%",Now) 
16.
 
17.
for /f "delims=" %%i in ('cscript //nologo %G%') do set "Bis=%%i" 
18.
>%Zeit% echo %Bis% 
19.
 
20.
start "%Titel%" %Befehl% 
21.
:Loop 
22.
set "Jetzt=%date% %time:~,8%" 
23.
if exist %Zeit% if "%Jetzt%" lss "%Bis%" goto :loop 
24.
 
25.
if exist %Zeit% ( 
26.
    echo Zeitablauf 
27.
    taskkill /f /fi "WINDOWTITLE eq %Titel% - %Befehl%">nul 
28.
29.
::aufräumen 
30.
del %G% 
31.
del %Befehl% 
32.
der %Zeit% 
33.
 
34.
echo Es geht weiter
Hier wird tatsächlich nur der "pause"-Befehl (siehe Zeile 12) in einer, durch diesen Batch selbst erstellten, temporären Batchdatei ausgeführt. Soferne nicht innerhalb des vorgegebenen Zeitraumes von 20 Sekunden die "Pause" beendet (und dadurch in weiterer Folge die Datei %Zeit% gelöscht) wird, läuft der Batch weiter und beendet den Task der temporären Batchdatei.

Natürlich kann auch ein bestehender Batch aufgerufen werden (der Pfad muss dazu in %Befehl% stehen). Dieser Batch müsste dann sein Ende ebenfalls durch Löschen der Datei lt %Zeit% signalisieren.

Einschränkung: Bei einem Monatswechsel während der vorgegebenen Laufzeit des "Befehles" (also zB Start am 31.8. um 23:30, Laufzeit 50 Minuten) erfolgt sofort ein Abbruch (da der "Bis"-Zeitpunkt mit "01.09.2009 00:20:00" ermittelt würde und der Vergleichswert "31.08.2009 23:30:00" wegen der Art des Vergleiches "größer" wäre). Bei Bedarf ließe sich allerdings durch Umformatieren der Datumswerte auch diese Einschränkung beseitigen).

Grüße
bastla
Bitte warten ..
Mitglied: stefanx
26.08.2009 um 11:59 Uhr
Hallo

Erstmal Danke für deine Hilfe. Habe es jedoch jetzt anders gelöst und zwar mit PSTools. Davon verwende ich die PSShutdown.exe zum herunterfahren der VMs. War die einfachere Weg. ;)

Gruß, Stefan
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Batch Datei um Windows Update zu löschen (1)

Frage von lordofremixes zum Thema Batch & Shell ...

Batch & Shell
USB-Stick mit Batch Datei erkennen (8)

Frage von derCreeper zum Thema Batch & Shell ...

Batch & Shell
gelöst Mit Batch Datei nach Ordner benennen indem sie sich befindet? (4)

Frage von PinkFLuffyUnicorn zum Thema Batch & Shell ...

Neue Wissensbeiträge
Heiß diskutierte Inhalte
Festplatten, SSD, Raid
PC stellt nach dem Bios ab (18)

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

iOS
16 iPads zentrall verwalten (18)

Frage von simonlohr zum Thema iOS ...

Viren und Trojaner
Ransomware .nm4 (15)

Frage von Zyklo92 zum Thema Viren und Trojaner ...

Windows 7
Freeware MSI Tool (13)

Frage von uridium69 zum Thema Windows 7 ...