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, 8031 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 ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(8)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
Batch & Shell
Ä in batch Datei (12)

Frage von BergEnte zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
LAN, WAN, Wireless
gelöst Server erkennt Client nicht wenn er ausserhalb des DHCP Pools liegt (28)

Frage von Mar-west zum Thema LAN, WAN, Wireless ...

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 ...

Windows Server
Server 2008R2 startet nicht mehr (Bad Patch 0xa) (18)

Frage von Haures zum Thema Windows Server ...