1. Encierra la variable cuando utilices símbolos reservados por el lenguaje como ":" .
2. Utiliza el comando FIND en lugar de FINDSTR, pues no lo necesitas en absoluto ya que conoces el string a buscar, y aparte, el punto "." representa cualquier posible caracter en RegEx, con lo cual estás buscando un string más largo de lo que piensas que no corresponde a una ip.
3. El símblo "|" o pipe debes escaparlo en la expresión de FOR con el operador de escape ^. En el punto nº2 te mostré como hacerlo.
4. El símbolo de variable de For tienes que duplicarlo al usarlo en un script.
5. El comando EXISTS es exclusivo para archivos y carpetas. Si quieres comparar un valor debes utilizar el comando FIND, FINDSTR o IF EQU/GEQ/GTR/LEQ/LSS, Batch es un lenguaje muy limitado.
Saludos!
Código (dos) [Seleccionar]
Set "IP=192.168.76.55:8093"
2. Utiliza el comando FIND en lugar de FINDSTR, pues no lo necesitas en absoluto ya que conoces el string a buscar, y aparte, el punto "." representa cualquier posible caracter en RegEx, con lo cual estás buscando un string más largo de lo que piensas que no corresponde a una ip.
Código (dos) [Seleccionar]
FOR ... in ('"type temp.txt ^| find "%IP%"') do (...)
3. El símblo "|" o pipe debes escaparlo en la expresión de FOR con el operador de escape ^. En el punto nº2 te mostré como hacerlo.
4. El símbolo de variable de For tienes que duplicarlo al usarlo en un script.
Código (dos) [Seleccionar]
For %%a ...
5. El comando EXISTS es exclusivo para archivos y carpetas. Si quieres comparar un valor debes utilizar el comando FIND, FINDSTR o IF EQU/GEQ/GTR/LEQ/LSS, Batch es un lenguaje muy limitado.
Saludos!