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

Programm starten nach Pingkontrolle

Frage Entwicklung Batch & Shell

Mitglied: Polarnacht

Polarnacht (Level 1) - Jetzt verbinden

13.08.2010, aktualisiert 18.10.2012, 4867 Aufrufe, 12 Kommentare

Hallo Liebe Community,

ich bin auf dem Gebiet Batch nicht wirklich bewandert.. hab mir vieles zusammen suchen müssen und komme trotzdem leider auf keine Lösung meines Problems.

folgendes Problem:

ich hab auf einem PC durchgehend ein VNC-Programm laufen.. nun ist die Verbindung aber nicht allzu stabil.. und manchmal ist der Hostrechner nicht erreichbar und VNC schließt sich automatisch.. jetzt will ich mir ne Batch-Datei schreiben die einfach durchgehend den Hostrechner anpingt.. und wenn der Ping weg ist, wartet bis der Ping wieder da ist und dann VNC wieder startet. Ich habs auf folgendem weg versucht.. aber es tut sich nichts.

@echo off

:parameter
SET ip=129.189.1.100

:Test
ping -t -n l %ip%|find "TTL=" > nul

if %errorlevel%==l goto nexttest
if not %errorlevel%==l goto Test

:nexttest
ping -n 1 l %ip%|find "TTL=" > nul

if %errorlevel%==l goto nexttest
if not %errorlevel%==l "C:\Programme\VNC\VNCblablabla.exe"


die obere schleife setzt also einen dauerping ab.. solange bis ein Error kommt.. dann wird das unterprogramm nexttest aufgerufen, das sich solange weiter aufruft und pingt bis irgendwann kein error mehr kommt und es die VNC.exe startet..

aber es klappt nicht? was mach ich falsch? ist mein Denken falsch? oder irgendwelche Synthax Fehler?

Ein Dickes Danke schon mal im Vorraus

Gruß

Polarnacht
Mitglied: bastla
13.08.2010 um 16:01 Uhr
Hallo Polarnacht und willkommen im Forum!

Rein handwerklich würde ich das (ungetestet) eher so versuchen:
01.
@echo off & setlocal 
02.
 
03.
:parameter 
04.
SET ip=129.189.1.100 
05.
 
06.
:Test 
07.
ping -n 1 %ip%|find "TTL=" > nul && goto :Test 
08.
 
09.
:nexttest 
10.
ping -n 1 %ip%|find "TTL=" > nul || goto :nexttest 
11.
 
12.
"C:\Programme\VNC\VNCblablabla.exe" 
13.
goto :Test
[Edit] "ping"-Befehle noch auf jeweils "-n 1" reduziert. [/Edit]

Grüße
bastla
Bitte warten ..
Mitglied: Polarnacht
13.08.2010 um 16:06 Uhr
Erstmal vielen Dank für die flotte antwort und den Willkommensgruß

ich werd das nachher, sobald der Rechner an dem das versucht werden soll, wieder zur Verfügung steht, gleich mal ausprobieren.
Womit mir vlt. auch noch geholfen wäre.. nachdem die VNC.exe wieder gestartet wurde.. soll das programm praktisch wieder auf "Überwachen" gehen um falls der Ping wieder ausfällt das gleiche nochmal zu machen.. das Programm müsste sich also selbst wieder holen.. kann ich so einfach an C:\Programme\VNC\VNCblablabla.exe "goto :Test" dranhängen und das Programm läuft wieder neu an?

EDIT: oh.. die letzte zeile "goto Test" die du angefügt hast, scheint wohl genau das zumachen oder? ;)

EDIT2: ich hab deine Variante einfach mal übernommen.. beim ausführen der Batch datei, bleibt das Fenster jedoch einfach schwarz.. es tut sich nichts..
Bitte warten ..
Mitglied: bastla
13.08.2010 um 17:01 Uhr
Hallo Polarnacht!
beim ausführen der Batch datei, bleibt das Fenster jedoch einfach schwarz.. es tut sich nichts..
Was sollte sich denn Sichtbares tun?

Du kannst natürlich noch zB zwischen Zeile 6 und 7 ein
echo %time:~,8% Teste Verbindung mit %ip%
einbauen, oder als Zeile 8
echo %date% %time:~,8% Keine Verbindung zu %ip%
und als Zeile 11
echo %date% %time:~,8% Verbindung zu %ip% wieder da, starte VNC
verwenden ...

Grüße
bastla
Bitte warten ..
Mitglied: Polarnacht
13.08.2010 um 17:05 Uhr
ach! Fehler meinerseits! Ich hab jetzt an das ganz normale Pingkommando gedacht, das ausgibt, ob Zeitüberschreitung oder Paket angekommen, aber das ist ja wieder ganz was anderes.. Verwechslung! ;) vielen Dank.. ich versuch das gleich mal.
Bitte warten ..
Mitglied: Biber
13.08.2010 um 17:06 Uhr
Moin Polarnacht,

willkommen auch von mir.
beim ausführen der Batch datei, bleibt das Fenster jedoch einfach schwarz.. es tut sich nichts
...oder aber auch die Fensterfarbe auf Cyan oder Magenta setzen... oder Donnergrün....aber auf Polarlicht geht nicht.

...wann is' denn endlich Wochenende..?

Grüße
Biber
Bitte warten ..
Mitglied: bastla
13.08.2010 um 17:09 Uhr
Hallo Polarnacht!
Ganz was anderes ist es nicht - aber die Ausgabe wird ja mit ">nul" unterdrückt ...

Grüße
bastla
Bitte warten ..
Mitglied: Polarnacht
13.08.2010 um 17:13 Uhr
Ah ich seh schon ;) auf dem Gebiet zähl ich einfach noch zu den Anfängern.. aber ich denk ich werd mir die Materien nun auch mal genauer zu Gemüte führen.. die Farbe Polarlicht wäre zwar schön, aber ist wohl nicht geeignet. (an dieser Stelle auch ein Danke für den Willkommensgruß an den Biber)

gruß

Polarnacht
Bitte warten ..
Mitglied: bastla
13.08.2010 um 17:16 Uhr
Hallo Polarnacht!

Nur als Hinweis: Ich habe oben noch die "ping"-Befehle auf das Nötigste reduziert ...

Grüße
bastla
Bitte warten ..
Mitglied: Polarnacht
13.08.2010 um 17:21 Uhr
So.. ich hab das programm einfach mal so verwendet, gestartet und laufen lassen.. hab dann das plötzliche verschwinden und wieder auftauchen des Pings durch abstecken und anstecken des Netzwerkkabels sozusagen "nachgestellt", das VNC Programm hat sich auch fein geschlossen, wie immer, wenn es keine Verbindung mehr hat.. die Batch hat es nach wieder anstecken des Kabels und nachdem der Ping wieder da war aber nicht wieder aufgemacht. Jetzt bin ich am grübeln ;)
Bitte warten ..
Mitglied: bastla
13.08.2010, aktualisiert 18.10.2012
Hallo Polarnacht!

Bau doch mal die oben vorgeschlagenen Zeilen 8 und 11 ein (und kontrolliere die Zeile 12 ) ...

Grüße
bastla
Bitte warten ..
Mitglied: 60730
13.08.2010 um 21:06 Uhr
Moin,

@bastla:

Ich will ja nicht kleinlich sein, aber die Kisten, die ich hier stehen hab sind nach ca einer std. Dosbox voll mit Antwort von 1.2.3.4 erst soweit, dass der VNC reagiert.
Jedoch ca. 6 Pings, nachdem (ich schreibe über die Redmonter Blowsysteme) z.B c$ da ist.
@Biber Die Abtönfarbe Polarnacht ist grade ausverkauft, aber wenns sein soll, streichen wir halt den Hintergrund

01.
@echo off & setlocal 
02.
 
03.
:start 
04.
for /l %%a in (0,1,9) do ( 
05.
		title ping pong zum %%a.ten wer bietet mehr? 
06.
		Ping 129.189.1.100 -n 1> nul 
07.
		color %%af 
08.
09.
:wait 
10.
Ping 129.189.1.100 -n 1|find "TTL=" > nul ||goto start 
11.
if not exist 129.189.1.100\c$ goto wait 
12.
%programfiles%\usw. 
13.
exit /b
Bitte warten ..
Mitglied: Polarnacht
14.08.2010 um 23:35 Uhr
super, vielen Dank für eure Hilfe.. es läuft
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(8)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
Windows 10
Durch einschalten des xbox one controller ein programm starten (3)

Frage von xsoerenx zum Thema Windows 10 ...

Sicherheitsgrundlagen
Programm ohne UAC und Administratorrechte starten (3)

Anleitung von agowa338 zum Thema Sicherheitsgrundlagen ...

Windows 10
"geräte und drucker" unter w8 bzw. w10 zu starten dauert ewig (5)

Frage von tobias3355 zum Thema Windows 10 ...

Heiß diskutierte Inhalte
Microsoft
Ordner mit LW-Buchstaben versehen und benennen (21)

Frage von Xaero1982 zum Thema Microsoft ...

Netzwerkmanagement
gelöst Anregungen, kleiner Betrieb, IT-Umgebung (18)

Frage von Unwichtig zum Thema Netzwerkmanagement ...

Windows Update
Treiberinstallation durch Windows Update läßt sich nicht verhindern (17)

Frage von liquidbase zum Thema Windows Update ...