script de búsqueda de nombres

Temas sobre programación ( php, c, sql, html, perl, python, ruby, java, bash, etc ) y recursos ( herramientas, frameworks, hosting, cms, etc )

Moderadores: akodo, maiku

Responder
nicolasd
Forista Nuevo
Forista Nuevo
Mensajes: 3
Registrado: Vie Nov 19, 2010 4:57 am

script de búsqueda de nombres

Mensaje por nicolasd » Vie Nov 19, 2010 5:02 am

Hola a todos, soy muy nuevo en esto y me gustaria que me ayuden...

estoy queriendo hacer un Script que recorra un archivo (Este archivo tiene una lista de nombres) y que cada nombre lo busque en cada archivo de un directorio....si encuentra ese nombre que me informe.

se que es hay que usar un ciclo for, un grep y un cat pero no se de que manera :(

muchas gracias por la ayuda.
Última edición por Deckon el Vie Nov 19, 2010 3:53 pm, editado 1 vez en total.
Razón: Titulo editado por no decir nada del tema a tratar, por favor revisa el reglamento del foro
Avatar de Usuario
neurus
Forista Legendario
Forista Legendario
Mensajes: 1801
Registrado: Dom Oct 10, 2004 7:00 am

Re: me pueden ayudar con esto?

Mensaje por neurus » Vie Nov 19, 2010 5:26 am

No te voy a hacer el script (nadie lo hará, porque es una regla no escrita de espacio linux y de cualquier sitio similar). Pero algunas pistas:

El bucle empieza con:

for i in `cat archivo`; do

#Ahora hay que decidir qué hacer con cada línea, y no entiendo qué necesitas hacer. Puede ser tanto find /directorio/$i como ls /directorio/$i. En cambos casos, mediante if.

if ls $i; then echo "encontrado $i"; fi;
done

opcional, antes de "fi": else echo "no encontrado $i";.

Y en lugar de echo, si lo quieres gráfico: zenity --info --text="encontrado $i"

Con esto tienes una guía, pero te aconsejo leer un manual de Bash.
nicolasd
Forista Nuevo
Forista Nuevo
Mensajes: 3
Registrado: Vie Nov 19, 2010 4:57 am

Re: me pueden ayudar con esto?

Mensaje por nicolasd » Vie Nov 19, 2010 2:57 pm

Te agradezco mucho por la rapidez en tu ayuda!!! No pense q iba a tener una respuesta tan rapida! Voy a ponerlo a prueba y te cuento!!!! Gracias x tus recomendaciones!!!
Avatar de Usuario
hipersayan_x
Forista Legendario
Forista Legendario
Mensajes: 1905
Registrado: Vie Abr 27, 2007 7:00 am
Contactar:

Re: script de búsqueda de nombres

Mensaje por hipersayan_x » Vie Nov 19, 2010 6:09 pm

Otra forma de leer un archivo linea a linea es:

Código: Seleccionar todo

while read linea
do
    echo hacer algo con $linea
done<archivo.algo


Y como ya te dijo neurus, también revisá el comando find.
Desarrollo en Qt: Qt Developer Network
Mis proyectos: github | SourceForge.net
nicolasd
Forista Nuevo
Forista Nuevo
Mensajes: 3
Registrado: Vie Nov 19, 2010 4:57 am

Re: script de búsqueda de nombres

Mensaje por nicolasd » Vie Nov 19, 2010 9:49 pm

Muchas gracias nuevamente por la otra ayuda, ya lo vengo armando y con sus consejos vengo muy bien! me queda solamente la parte que al poner el comando "grep" si encuentra algo y pongo un "echo $?" me enviará "0" o "1"...bueno, mi pregunta es, como puedo hacer para decir: bueno, si no encuentro la palabra que estoy buscando que me la liste en pantalla".
Avatar de Usuario
neurus
Forista Legendario
Forista Legendario
Mensajes: 1801
Registrado: Dom Oct 10, 2004 7:00 am

Re: script de búsqueda de nombres

Mensaje por neurus » Vie Nov 19, 2010 10:08 pm

Ah, cierto que se trataba de seleccionar de la lista. Había olvidado eso.
En esos casos se usan tuberías:

cat archivo|grep selección
Responder
  • Similar Topics
    Respuestas
    Vistas
    Último mensaje