Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien
Toon posts:

[vbs] Ip address uit een textfile halen

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik probeer met vb een script te maken dat uit een textfile de ipadressen kan halen die ik dan later ga verwerken om een dhcp server mee te configureren.

Dit is een deel van de textfile, en hieruit wil ik dus enkel 192.168.1.x uithalen.
code:
1
2
3
Minimum Host   : 192.168.1.1         11000000.10101000.00000001.00000001     
Minimum Host   : 192.168.1.1         11000000.10101000.00000001.00000001     
Minimum Host   : 192.168.1.9         11000000.10101000.00000001.00001001


In vbs heb ik al een scriptje gemaakt dat het bestand kan openen, maar op de lijn met de functie split() zit ik vast want ik weet niet goed op wat ik moet splitsen om het ip eruit te halen.
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
set fso = wscript.createobject("Scripting.filesystemobject")

Set fileStream = fso.OpenTextFile("ip.txt", 1)

dim arrLijnen()
redim arrLijnen(1)
dim teller
do 

    templine = filestream.readline

    arrLijn = split(templine,":")

    arrLijnen(teller) = arrLijn

    teller = teller + 1

    redim preserve arrLijnen(teller)
loop until filestream.atendofstream = true

filestream.close


Weet iemand raad?

Bedankt

  • alt-92
  • Registratie: Maart 2000
  • Niet online

alt-92

ye olde farte

Je kan bij wijze van controle die file in bijvoorbeeld Excel importeren om te zien of je met een tab separator en Trim() eruit komt.

ik heb een 864 GB floppydrive! - certified prutser - the social skills of a thermonuclear device


Verwijderd

Topicstarter
Het "probleem" is dat ik het het liefst zou doen zonder Excel, want de ip.txt wordt aangemaakt vanuit een ander dos script. (http://ijack.net/subnet.html) Spijtig genoeg is het bij dat script niet mogelijk om enkle de ip adressen eruit te halen.

Zou het mogelijk zijn zonder excel?

  • alt-92
  • Registratie: Maart 2000
  • Niet online

alt-92

ye olde farte

Ik zeg niet dat je bij het script Excel moet gebruiken, alleen dat je daarmee bij het importeren van dat bestand wel snel kan zien of het een Tab separated file of wat anders is.
Met die kennis kun je dan je script toch aanpassen? :)

ik heb een 864 GB floppydrive! - certified prutser - the social skills of a thermonuclear device


  • elevator
  • Registratie: December 2001
  • Niet online

elevator

Officieel moto fan :)

Je kan het volgens mij vrij gemakkelijk fixen met iets als:
Visual Basic:
1
2
3
4
5
6
7
8
Dim strOrig: strOrig = "Minimum Host   : 192.168.1.1         11000000.10101000.00000001.00000001"
Dim strIp: strIp = Trim(Mid(strOrig, Len("Minimum Host    : "), 16))
Dim arIp: arIp = Split(strIp, ".")

wscript.echo arIp(0)
wscript.echo arIp(1)
wscript.echo arIp(2)
wscript.echo arIp(3)
?

Verwijderd

Topicstarter
Beste elevator, bedankt voor de tip, ik probeer het uit zodra ik thuis ben.
En ik hou jullie op de hoogte.

Verwijderd

Topicstarter
Edit : bedankt voor het script, het werkt perfect.
Nog 1 laatste vraag :

Ik probeer volgend commando uit te voeren, maar wil dmv find de resultaten beperken.
Maar hoe krijg ik dit werkende?

In dos typ ik subnet.exe 192.168.1.1 24 | find "Minimum" > ip.txt
Maar in vbs zit ik met een quotes probleem : ws.run "cmd /K subnet.exe 192.168.1.1 24 | find "Minimum" > ip.txt"

Hoe zou ik dit kunnen oplossen?

Bedankt

  • plofkip
  • Registratie: Oktober 2002
  • Laatst online: 22:52
Verwijderd schreef op zondag 18 oktober 2009 @ 20:52:
Edit : bedankt voor het script, het werkt perfect.
Nog 1 laatste vraag :

Ik probeer volgend commando uit te voeren, maar wil dmv find de resultaten beperken.
Maar hoe krijg ik dit werkende?

In dos typ ik subnet.exe 192.168.1.1 24 | find "Minimum" > ip.txt
Maar in vbs zit ik met een quotes probleem : ws.run "cmd /K subnet.exe 192.168.1.1 24 | find "Minimum" > ip.txt"

Hoe zou ik dit kunnen oplossen?

Bedankt
Weet niet of dat in vbs ook zo is, maar in andere talen moet je " dan escapen naar \"
Pagina: 1