---
title: "ping script"
type: "forum-thread"
url: "https://www.webforum.nu/amne/dotnet/103874-ping-script"
topic: ".NET"
topic_url: "https://www.webforum.nu/amne/dotnet"
author: "acka"
published: "2004-05-18T19:10:58.000Z"
updated: "2004-05-19T20:04:00.000Z"
replies: 3
views: 331
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/dotnet/103874-ping-script"
---

# ping script

## #1 — acka, 2004-05-18T19:10Z

Hej
Försöker få ett script att pinga en nod och returnera enbart resultatet (svarstid)

Lyckades lägga vantarna på ett script som jag vet fungerar.
Kan dock vara så att han kör det på en svensk XP och jag kör det på en engelsk XP

Hur som helst fungerar det inte för mig och jag är en noob när det gäller VBscript så jag kan inte lösa det.
Kanske kan någon av er hjälpa mig.

Scriptet ser ut så här.
  

```
'Syntax = cscript.exe //NoLogo PingStat.vbs <datornamn eller ip>
'
'

Option Explicit
Dim objArgs, oShell, CmdOutput, M_Value, I, ArrStr, Cmd

'Här ställer man in defaultvärde
M_Value=2000

Set objArgs = WScript.Arguments
Set oShell = CreateObject("Wscript.Shell")
	Set Cmd = oShell.Exec("ping " & wscript.arguments(0))
	While Not Cmd.StdOut.AtEndOfStream
	CmdOutput = UCase(Cmd.StdOut.Readline())
	If InStr(CmdOutput,"MEDEL") Then
		ArrStr=Split(CmdOutput)
		M_Value=ArrStr(14)
	End if
	Wend
	
	'For I=0 to UBound(ArrStr)
	'wscript.echo  I & "=" & arrstr(I)
	'Next
	

wscript.echo M_Value
```

När jag sen ska köra scriptet så skrivar jag i cmd tex.

cscript.exe //NoLogo PingStat.vbs  192.36.125.18 \> test.txt

Och då var min förhoppning att jag skulle få svarstiden från <https://www.sunet.se> till min txt fil.
Men det enda som den exporterar dit är M_Value värdet som är 2000. 

Är det någon som kan tipsa om vad som inte stämmer så skulle det vara guld värt :)

Tanken med detta är att jag sen ska använda det värdet till att lägga en graf i mrtg på svarstider till vissa noder.

/Red....
Vet inte om det hamnade rätt men någon får väl flytta den om den är i fel forum.

Permalänk: https://www.webforum.nu/p/103874

## #2 — Nexus86, 2004-05-19T10:50Z

Felet är att 14 är utanför arrayen. Använd följande (fungerar iaf för mig):

```
'Syntax = cscript.exe //NoLogo PingStat.vbs <datornamn eller ip>
'
'

Option Explicit
Dim objArgs, oShell, CmdOutput, M_Value, I, ArrStr, Cmd

'Här ställer man in defaultvärde
M_Value=2000

Set objArgs = WScript.Arguments
Set oShell = CreateObject("Wscript.Shell")
	Set Cmd = oShell.Exec("ping " & wscript.arguments(0))
	While Not Cmd.StdOut.AtEndOfStream
	CmdOutput = UCase(Cmd.StdOut.Readline())
	If InStr(CmdOutput,"MEDEL") Then
		ArrStr=Split(CmdOutput)
		M_Value=ArrStr(UBound(ArrStr))
	End if
	Wend
	
	'For I=0 to UBound(ArrStr)
	'wscript.echo  I & "=" & arrstr(I)
	'Next
	

wscript.echo M_Value
```

cscript //NoLogo PingStat.vbs webforum.nu gav mig: 39MS som svar

Permalänk: https://www.webforum.nu/p/1350991

## #3 — acka, 2004-05-19T14:32Z

Tack Nexus..

Funkar kanon.
Sen om man byter ut MEDEL mot AVERAGE så funkar det i en eng version av operativ har jag listat ut :)

/AE

Permalänk: https://www.webforum.nu/p/1351155

## #4 — Nexus86, 2004-05-19T20:04Z

Jo jag märkte det jag med eftersom jag var tvungen att göra så. ;)

Permalänk: https://www.webforum.nu/p/1351265

---

Tråden på webben: https://www.webforum.nu/amne/dotnet/103874-ping-script
