/ Forside / Teknologi / Operativsystemer / MS Windows / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
MS Windows
#NavnPoint
Klaudi 76474
o.v.n. 67550
refi 58409
tedd 45557
Manse9933 45149
molokyle 40687
miritdk 38357
briani 27239
BjarneD 26414
10  pallebhan.. 24310
Tildele resultat til en variabel?
Fra : Bjørn G


Dato : 12-07-06 23:01

Hej gruppe
Jeg har brug for at tildele resultatet af en ping, til en variabel.
Min umiddelbare tanke var at lave noget lignende: set VAR = ping server
Men det var lige optimistisk nok
Er der nogen der ligger inde med en god idé?

Kærlig hilsen
Bjørn G



 
 
Jan Vestergaard (13-07-2006)
Kommentar
Fra : Jan Vestergaard


Dato : 13-07-06 12:50

Bjørn G skrev følgende i et indlæg på Usenet:
> Min umiddelbare tanke var at lave noget lignende: set VAR =
> ping server Men det var lige optimistisk nok
> Er der nogen der ligger inde med en god idé?

Næh ikke lige til en variabel, men du kan få det ud i en fil,
hvis det kan hjælpe ?

ping server > c:\output.txt

Du kan også forsøge dig med at pipe outputtet til en ny kommando

ping server | my kommando

| findes ved siden af accenterne og tager output fra kommandoen
før og smider videre til kommandoen efter.

Men det virker ikke altid - men du kan da eksperimentere med det,
hvis det kan bruges til noget.

Jan


--
Med venlig hilsen Jan Vestergaard
Web: www.jve.dk - email kan sendes via hjemmesiden
- men indlæg på Usenet bør normalt besvares i gruppen


Bertel Brander (17-07-2006)
Kommentar
Fra : Bertel Brander


Dato : 17-07-06 00:48

Bjørn G wrote:
> Hej gruppe
> Jeg har brug for at tildele resultatet af en ping, til en variabel.
> Min umiddelbare tanke var at lave noget lignende: set VAR = ping server
> Men det var lige optimistisk nok
> Er der nogen der ligger inde med en god idé?

Noget i stil med (det er én linie):

for /F "tokens=9" %I in ('ping google.com ^|findstr Gennemsnitlig') do
set Gennemsnit=%I

Herefter vil %Gennemsnit% indeholde gennemsnitlig ping tid, f.ex:
128ms

Det køres på kommandolinien, hvis det skal bruges i en .bat fil er
det %%I og ikke %I

Det er testet med en dansk WinXP, det skal justeres lidt hvis det
er andre windows versioner.

--
Absolutely not the best homepage on the net:
http://home20.inet.tele.dk/midgaard
But it's mine - Bertel

Bjørn G (17-07-2006)
Kommentar
Fra : Bjørn G


Dato : 17-07-06 21:42


"Bertel Brander" <bertel@post4.tele.dk> skrev i en meddelelse
news:44bad045$0$20226$edfadb0f@dread16.news.tele.dk...
>
> Noget i stil med (det er én linie):
>
> for /F "tokens=9" %I in ('ping google.com ^|findstr Gennemsnitlig') do set
> Gennemsnit=%I
>
> Herefter vil %Gennemsnit% indeholde gennemsnitlig ping tid, f.ex:
> 128ms
>
> Det køres på kommandolinien, hvis det skal bruges i en .bat fil er
> det %%I og ikke %I
>
> Det er testet med en dansk WinXP, det skal justeres lidt hvis det
> er andre windows versioner.
>
> --
> Absolutely not the best homepage on the net:
> http://home20.inet.tele.dk/midgaard
> But it's mine - Bertel


Tak for det Bertel.
Jeg løste den dog selv på anden vis, da jeg opdagede at jeg egentlig ikke
skulle bruge resultatet, men mere det faktum at der kom et resultat. Derfor
valgte jeg at teste på %ERRORLEVEL%, for derefter selv at smide et svar ud:

@echo off
:: IP-nummer på server
set SERVER=google.com
:: Lidt Resultatstrenge
set OPPE=Forbindelsen er oppe
set NEDE=Forbindelsen er nede
:: Pinger server, og leder efter en streng om modtagelse
PING -n 1 %SERVER% | FIND "modtaget = 1" > Null
:: Hiver returkoden ud, 0 for vellykket, 1 for fejl
set SVAR=%ERRORLEVEL%
:: Tester på SVAR-variabel, og returnerer resultatstreng
If %SVAR%==0 (echo %OPPE%
) else (echo %NEDE%)

Venlig hilsen Bjørn



Søg
Reklame
Statistik
Spørgsmål : 177560
Tips : 31968
Nyheder : 719565
Indlæg : 6408952
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste