[NT/2K/XP] Output find commando in variable plaatsen

Pagina: 1
Acties:

  • Borrelnootje11
  • Registratie: November 2004
  • Laatst online: 16:04
De bedoeling is om weer te geven hoe vaak een bepaalde tekenreeks voorkomt in een *.txt bestand.
Dat kan met

C:\>FIND /C /I "Tekenreeks" X:\Dir\index.txt"



de output is dan
C:\>FIND /C /I "Tekenreeks" X:\Dir\index.txt"

---------- X:\Dir\Index.txt: 10


en de bedoeling is om het getal "10" later in het batch bestand weer te geven door middel van een variable. Dus zonder (---------- X:\Dir\Index.txt: )

De output bevat volgens mij ook eerst een enter/lege regel.
Dus ik denk de output eerst naar een bestand en dan met een for de 2e regel van dat bestand in een variable zetten en dan alleen de laatste tekens na de spatie van "---------- X:\Dir\Index.txt: "weergeven.

Ik was al bezig met een for, maar ik weet niet hoe dat commando precies werkt

For /F %%I in (P:\tmp\index.txt) Do FIND /C /I "_311" P:\tmp\index.txt
SET aantal=%I
Ik kom er niet uit. :? :)

  • Borrelnootje11
  • Registratie: November 2004
  • Laatst online: 16:04
Kickje

  • Archie_T
  • Registratie: Januari 2002
  • Laatst online: 09:18
Ik heb wel een voorbeeld hoe ik uit IPConfig een IP adres haal, wellicht heb je daar wat aan:
code:
1
2
3
4
5
@echo off
ipconfig |find "IP Add" > tmp.txt
for /F "tokens=15" %%a in (tmp.txt) do set IP=%%a
echo iets >%IP%.txt
del tmp.txt

Dit schrijft in de huidige directory een file weg die <het IP adres.txt> heet en zet daar de tekst "iets" in.
Je moet dus de output van Find naar een tijdelijk bestand zetten en vervolgens ga je dat bestand uit elkaar trekken met For. Ik denk delimiter = ":" en tokens 2 maar je moet maar even wat rommelen met de output

  • Borrelnootje11
  • Registratie: November 2004
  • Laatst online: 16:04
Thnx, nu weet ik ook gelijk hoe het "For" commando werkt. _/-\o_