PING!
PING!
Tiedän, että MS-Dosilla on mahdollista kirjoittaa batti joka tekee seuraavat tehtävät... mutta miten?
- pingittää osoitteet 192.168.0.%n, jossa &n on laskurimuuttuja 1...255
- kirjoittaa tuloksen tekstitiedostoon c:\tulos.txt
EDIT:
ratkaistu osittain. Suoraan komentoriville kirjoitettuna. Silmukka toimii, mutta kirjoittaa tekstitiedostoon VAIN viimeisen osoitteen pingauksen tuloksen::
FOR %i IN (1,1,255) DO @PING 192.168.0.%i >c:\tulos.txt
- pingittää osoitteet 192.168.0.%n, jossa &n on laskurimuuttuja 1...255
- kirjoittaa tuloksen tekstitiedostoon c:\tulos.txt
EDIT:
ratkaistu osittain. Suoraan komentoriville kirjoitettuna. Silmukka toimii, mutta kirjoittaa tekstitiedostoon VAIN viimeisen osoitteen pingauksen tuloksen::
FOR %i IN (1,1,255) DO @PING 192.168.0.%i >c:\tulos.txt
Thanks, alikessun jämät auttoivat.
Mutta teenkös mä nyt vielä jonkun väärin, lopputulema on että ... IN (1,1,255) pingittää vain osoitteet *.1, *.1 ja *.255
EDIT:
keksin! pitää olla
FOR /L %n IN (1,1,255) do @ping 192.168.0.%n >> c:\tulos.txt
Kehtaanko vaivata Aasia vielä sillä, että miten tuota pitää muokata että tästä saisi valmiin batin?
Mutta teenkös mä nyt vielä jonkun väärin, lopputulema on että ... IN (1,1,255) pingittää vain osoitteet *.1, *.1 ja *.255
EDIT:
keksin! pitää olla
FOR /L %n IN (1,1,255) do @ping 192.168.0.%n >> c:\tulos.txt
Kehtaanko vaivata Aasia vielä sillä, että miten tuota pitää muokata että tästä saisi valmiin batin?
daddykillkill kirjoitti:Kehtaanko vaivata Aasia vielä sillä, että miten tuota pitää muokata että tästä saisi valmiin batin?
Jos ei Manalan ohje riittänyt, niin mä en enää tiedä yhtään sen enempää. Mun .bat - koodaamisen kultaiset vuodet ovat jossain vähintään vuosikymmenen takana. Tulosteenohjaukset vaan nyt sattuvat olemaan samankaltaisia myös *nix/Linux-ympäristöjen vakiokomentotulkeissa.
Edit: sviddu, saatan silti tietää. Laita tuplaprosentit...
Tasan ei mene muumit kanootissa.
daddykillkill kirjoitti:^ Kokeiltu. Herjaa "n was unexpected at this time". Eli syntaksi on jotenkin erilainen bat kontra käsin komentoriville..?
Aika omituista. Eihän batti ole muuta kuin komentojonotiedosto, joka suorittaa komentoja ihan samaan tapaan kuin manuaalisesti tyrkättynäkin.
Windowsin altako tota ajat? Pitäiskö sun jotenkin kikkailla batin propertiesin alta administrator-oikeudet bat-tiedoston ajolle? Vaihtaa suorituskansiota? Emmätiiä.
Battikoodaus on perseestä, joten suosittelen tekemään fiksun ratkaisun ja kokeilemaan jotain Windowsillekin saatavilla olevaa järkevää skriptikieltä, esimerkiksi Pythonia.
Linkistä löytyy jopa melkein suoraan tarpeisiisi sopiva ohjelmarunko:
http://www.wellho.net/solutions/python- ... ample.html
Linkistä löytyy jopa melkein suoraan tarpeisiisi sopiva ohjelmarunko:
http://www.wellho.net/solutions/python- ... ample.html
Monsieur Manala kirjoitti:Windowsin altako tota ajat? Pitäiskö sun jotenkin kikkailla batin propertiesin alta administrator-oikeudet bat-tiedoston ajolle? Vaihtaa suorituskansiota? Emmätiiä.
Winukasta joo ja adminina.
No, perseestähän tämä kikkailu on, mutta sattuneesta syystä tämmöiseen ei kannata kaivaa boaa, kyykäärmettä tai pythonia käyttöön. Annetaan hautua hetki, eiköhän se vastaus jostain löydy. Ja jos ei, niin käytetään jotain valmista ilmaissovellusta...
Kiitos osallistuneille
Onslow kirjoitti:Yritätkö pitää wlanin signaalin elossa läppärin ja purkin välillä?
Eiku ihan työkäyttöön.
Valkonikki kirjoitti:En jaksanut itse kokeilla, mutta tuli noin lonkalta mieleen, että ainakin skandit poksahtaa komentokehoitetasolla jos batin tekee notepadillä ja yrittää ajaa komentokehoitteessa.
Juu, varmasti poksahtaakin... siksi en käytäkään niitä ikinä muuttujien nimissä.
daddykillkill kirjoitti:^ Sori, tuplaprossat ei nekään toimineet. Eikä &-merkki. Eikä ilman mitään etumerkkiä.
Kokeilin %%:lla, kyllä se toimii.
Itse en olisi kyllä keksinyt, kun ikivanhoissa .bat-tiedostoissanikin (ovat tallella ) on vain käytetty yhtä %:ia; ilmeisesti 4dosista oli tuo hölmö ero komentoriviin verrattuna poistettu.