2016-04-13 22 views
1

Wie bekomme ich eine Zeile aus einer Textdatei über findstr?So erhalten Sie eine Zeile aus einer Textdatei über findstr

Ich erwarte, dass diese Zeile zum Beispiel zu bekommen:

002-10.20.2.240 durch Eingabe 002

Ich versuche, diese aber es funktioniert nicht ...

@echo off 
set /p line="" 
set /p APP=numero de APP: 

for /F "delims=" %%a in ('findstr /s /b "APP" Listin-7-4-2016.txt') do set line=%%a 

echo. Linea del archivo detectada: %line% 

pause 

Beispiel für Listin-7-4-2016.txt

002-10.20.2.240 
003-10.20.3.240 
004-10.20.4.240 
006-10.20.2.241 
007-10.20.7.240 
008-10.20.7.241 
016-10.20.6.240 
017-10.20.6.241 

Antwort

2

findstr /s /b "APP" ... sucht nach der Zeichenfolge APP, aber Sie wollen für die Variable %APP% suchen:

findstr /s /b "%APP%" ...

(durch die Art und Weise: Sie müssen nicht /s benötigen, wenn Sie in einer einzigen Datei suchen nur)

+2

Er sollte auch 'set/P line =" "' auf 'set line =' setzen. – rojo

+0

@rojo: hängt von seinen Absichten ab, aber wahrscheinlich hast du recht. – Stephan

Verwandte Themen