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

Batch-File - Prüfen ob ein Remotecomputer erreichbar ist

Frage Microsoft Windows Netzwerk

Mitglied: skbasel

skbasel (Level 1) - Jetzt verbinden

07.10.2011, aktualisiert 18.10.2012, 10309 Aufrufe, 8 Kommentare

Dienste werden Mithilfe von einer Batch-Datei über remote gestartet.

Hallo,
Ich habe eine Batch-Datei erstellt um damit Dienste über Remote zu starten. Dies funktioniert auch alles soweit, aber wenn einer der Computer Offline oder sonst nicht erreichbar ist bleibt es hier hängen und startet die restlichen Dienste nicht.

title start services

sc \\PC1 start MMS

sc \\PC2 start MMS

sc \\PC3 start MMS

sc \\PC4 start MMS

pause


Wenn jetzt hier z.b. PC2 nicht läuft und deshalb nicht erreichbar ist werden die Dienste auf PC3 und PC4 nicht gestartet. Wie kann ich jetzt überprüfen ob der Computer läuft und wenn nicht, sollte es mit PC3 weitergehen.
Kann mir da jemand helfen?

Danke
Mitglied: BigWim
07.10.2011, aktualisiert 18.10.2012
Moin skbasel,

sieh Dir dieses Beispiel mal an

Gruß
Markus
Bitte warten ..
Mitglied: skbasel
07.10.2011 um 09:13 Uhr
Danke, aber diese Lösung will bei mir leider nicht funktionieren...



for /f %%a in ('ping AUTOMOTIVE_TEST ^|find /C "Antwort von"') do(
if %%a EQU 4 (
sc \\AUTOMOTIVE_TEST start MMS)
else (
goto a2)
)

for /f %%a in ('ping CHBSJAQM001 ^|find /C "Antwort von"') do(
if %%a EQU 4 (
sc \\CHBSJAQM001 start MMS)
else (
goto a3)
)

:a3
sc \\CHBSJAQW030 start MMS


Oder hab ich einen Fehler gemacht?
Bitte warten ..
Mitglied: BigWim
07.10.2011 um 09:24 Uhr
Probiere es mal so:

01.
call :RunServices PC1 
02.
call :RunServices PC2 
03.
goto :eof 
04.
 
05.
:RunServices 
06.
Set host=%1 
07.
ping -n 1 -w 5 %host% | find /i "Antwort" >NUL: && (sc \\%host% start MMS) || (@echo %host% ist offline)  
08.
goto :eof
Bitte warten ..
Mitglied: skbasel
07.10.2011 um 09:39 Uhr
C:\Users\admmst\Desktop>call :RunServices VM-EOL2

C:\Users\admmst\Desktop>Set host=VM-EOL2

C:\Users\admmst\Desktop>ping -n 1 -w 5 VM-EOL2 | find /i "Antwort" 1>NUL: && (sc \\VM-EOL2 start MMS ) || () VM-EOL2 ist offline

C:\Users\admmst\Desktop>goto :eof

C:\Users\admmst\Desktop>call :RunServices AUTOMOTIVE_TEST

C:\Users\admmst\Desktop>Set host=AUTOMOTIVE_TEST

C:\Users\admmst\Desktop>ping -n 1 -w 5 AUTOMOTIVE_TEST | find /i "Antwort" 1>NUL: && (sc \\AUTOMOTIVE_TEST start MMS ) || ()AUTOMOTIVE_TEST ist offline

C:\Users\admmst\Desktop>goto :eof

C:\Users\admmst\Desktop>pause
Press any key to continue . . .


Hm, es sieht zwar gut aus.. aber irgendwie sagt der mir dann immer "offline".
VM-EOL2 ist wirklich offline, aber Automotive_test ist online..

Woran liegt das? Ich bin als Admin in einer Domain eingeloggt.
Und die Dienste werden nicht gestartet..
"sc \\AUTOMOTIVE_TEST start MMS " alleine startet den Dienst.
Danke für die Antworten!

Gruss
Bitte warten ..
Mitglied: BigWim
07.10.2011 um 10:04 Uhr
Hallo skbasel,

Woran liegt das?
Mit den vorhandenen Informationen zu beurteilen, wo der Fehler liegt, ist von dieser Seite des Bildschirms schwierig - zumindest für mich.

Das -w steht für ein Zeitlimit - vielleicht hast Du längere Pingzeiten? Hilfreich ist auch ping /?.
Die Umleitung >NUL: verhindert die zusätzliche Ausgabe von ping.

Führe doch mal in der DosBox diese Zeile aus:
01.
ping -n 1 AUTOMOTIVE_TEST | find /i "Antwort"  && (sc \\AUTOMOTIVE_TEST start MMS) || (@echo AUTOMOTIVE_TEST ist offline)
Vielleicht kannst Du jetzt erkennen, was los ist ...

Gruß
Markus
Bitte warten ..
Mitglied: skbasel
07.10.2011 um 10:45 Uhr
Kommt irgendwie genau das selbe raus.. ich habs jetzt einfach so gelöst: 1 Batch Datei welche die anderen Batch Dateien startet. Da es so oder immer nur 10-15 Computer sind auf denen der Dienst laufen muss. Aber trotzdem Danke für deine Hilfe.
Bitte warten ..
Mitglied: 60730
07.10.2011 um 14:03 Uhr
moin,

nur mal so eine Idee...

  • jeder, außer dem TO benutzt Code Tags <code>hier steht was drin</code>
  • Ein erfolgreicher Ping bedeutet per anno garnix.
  • das stumpfe Starten eines Dienstes - ohne zu prüfen, ob der aktiv ist, mag auch eine Lösung sein, die einem in jedem Tankstellencomputermagazinforum von der goldenen Anna Nass höchstpersönlich verliehen wird.
  • Fragen zu stellen, auf Antwort hoffen und dann eine ganz andere Lösung zu bauen - und die dann nicht hier zu veröffentlichen - ist alles andere, als die Pfadfinder mit Ihrer guten Tat pro Tag propagieren.

Gruß
Bitte warten ..
Mitglied: 60730
07.10.2011 um 16:02 Uhr
Moin,

auf deinen speziellen PN Wunsch...

Rechner.txt
PC1 
PC2 
PC3 
PC4
Steuerbatch
01.
for /f %%a in (Laufwerk:\pfad\rechner.txt) do ( 
02.
                  if exist \\%%a\c$\boot.ini sc \\%%a query MMS|find "RUNNING" && echo MMS auf Rechner %%a war bereits gestartet ||sc \\%%a start MMS && echo MMS auf Rechner %%a gestartet 
03.
                  if not exist \\%%a\c$\boot.ini echo Kiste %%a ist aus nix mit Nicolaus 
04.
)
"So" macht das etwas mehr Sinn.

Das es mehr als dieses "Ding" braucht oder es voll in die Grütze haut, wenn ein Client nicht vorhanden ist - bezweifel ich.
Dass es ein falsepositive meldet - wenn die Kiste den Dienst MMS garnicht kennt/starten kann - vermute ich.

Daher


Gruß
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(1)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
Batch & Shell
"Generic" Drucker mit batch - File erstellen (6)

Frage von MrPreesident zum Thema Batch & Shell ...

Batch & Shell
gelöst Kl. Frage: Log-File schreiben per Batch (3)

Frage von Yauhun zum Thema Batch & Shell ...

Batch & Shell
gelöst ( Batch ) Open File or Folder Dialog (5)

Frage von clragon zum Thema Batch & Shell ...

Windows 10
Batch: Copy file.txt Lokaler Drucker (1)

Frage von fluluk zum Thema Windows 10 ...

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
Outlook 2010 findet ost datei nicht (18)

Frage von Floh21 zum Thema Outlook & Mail ...

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

Frage von Haures zum Thema Windows Server ...