Foro de elhacker.net

Programación => Scripting => Mensaje iniciado por: andreiya en 11 Junio 2014, 01:16 am



Título: Crear un bat que indique si existe un string?
Publicado por: andreiya en 11 Junio 2014, 01:16 am
Hola chico/as, vengo de aprender php y algo de java gracias a esta fantastica web, me gustaria crear un bat que usare para leer un archivo txt(siempre sera el mismo nombre y ubicacion) y lo que quiero que haga es que me muestre un mensaje que diga si esta el string que yo le indique(sera siempre el mismo string solo lo cambiaria una vez).
Ejemplo.
Normalmente volcare una lista de nombres y apellidos a un txt que se llamara nombres.txt en el escritorio y quiero que al ejecutar el bat me muestre por pantalla si existe o no un determinado nombre y apellido que sera fijo casi siempre, cuantas veces coincide y en que linea aparecen.
Si conoceis si se puede hacer o donde buscar informacion para hacerlo os lo agradeceria muchiiiisisisimo.
Muchos besitos cielos mios.  :-*


Título: Re: Crear un bat que indique si existe un string?
Publicado por: daryo en 12 Junio 2014, 15:51 pm
se puede hacer con el comando for que entre otras cosas se puede usar para leer archivos de texto


Título: Re: Crear un bat que indique si existe un string?
Publicado por: adrianmendezRap en 12 Junio 2014, 16:05 pm
Básicamente tiene que ir leyendo linea por linea e introducirlas en una variable para luego compararlas con la string clave e ir contando el numero de lineas por separado en otra variable, así cuando coincida solo tienes que mirar en que linea estas mirando esa variable.

Código:
@echo off
for /f "tokens=*" %%a in (input.txt) do (
  echo line=%%a
)
pause

Este es el ejemplo mas sencillo de como recorrer linea por linea un documento, el comando tokens le defines alguna marca de donde debe para de cada linea en caso de que el documento no tenga saltos de linea deberías definir algún punto donde acabe ese tramo de información. La string que se obtiene se guarda en %%a.