[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: [OT] Re: Variable con comando egrep me arroja resultado que yo no esperaba.



2014-10-04 10:31 GMT-05:00 Camaleón <noelamac@gmail.com>:
> El Sat, 04 Oct 2014 10:01:14 -0500, Debia Linux escribió:
>
>> Listeros:
>>
>> Muy buenos dias.
>>
>> Desde hace unos dias no he podido resolver una situacion con un script.
>> Les explico brevemente.
>>
>> 1.- Estoy danto de alta a usuarios de una alberca, APELLIDOS, NOMBRE
>> etc. y aqui viene lo bueno... tengo que escribir 5 intereses deportivos
>> de las personas. No todos tienen 5 intereses deportivos, algunos solo
>> tienen dos. Cabe mencionar que sus intereses deportivos siempre son
>> diferentes.
>>
>> 2.- Ahora tenemos una base de datos extensa en archivo de texto que
>> tiene las direcciones, su numero de telefono, email etc. de todos los
>> centros donde se imparten cursos deportivos y no deportivos, en alguno
>> de ellos pueden dar clases de tejido, ajedrez, etc.
>>
>> 3.- La idea es que al tomar las variables, estas busquen mediante el
>> comando egrep los datos que coincidan y se envien por email.
>
> (...)
>
> Creo que a grandes rasgos capto el concepto de lo que buscas y te sugiero
> la siguiente idea: almacenar los valores de los intereses en una matriz
> para después poder usar los elementos que la componen (índice y valor) en
> tu filtro de búsqueda que podrás usar un bucle simple con "for".
>
> El uso de una matriz te evita preocuparte del número de intereses que
> haya, sean estos 2, 3 o 20 o ninguno. Cosa a parte es que dependiendo del
> tipo de base de datos que hayas definido te sirva o no un simple egrep
> para buscar los datos asociados.

Camaleon, cada vez te admiro mas... soy tu fan numero 1, number one,
you are the best,

[Music]
You are the champion my friend...

Llegue a la solucion del problema...

######## SCRIPT ########

#!/bin/bash

clear
echo ""
echo "Escribe el primer interes"
read uno

echo ""
echo "Escribe el segundo interes"
read dos

echo ""
echo "Escribe el tercer interes"
read tres

echo ""
echo "Escribe el cuarto interes"
read cuatro

echo ""
echo "Escribe el quinto interes"
read cinco

touch ~/tmp00

INTERESES=( "$uno" "$dos" "$tres" "$cuatro" "$cinco" )

for i in "${INTERESES[@]}"; do
  if [ -n "$i" ]; then

  egrep -i "$i" ~/centros.db >> ~/tmp00

  elif [ -z "$i" ]; then

  echo "NO INGRESO NINGUN INTERES"
  fi
done

  echo "AHORA ENVIAMOS MAIL"


######## SCRIPT ########

Crei que se me quemaba el seso, llevaba dias sin dormir, ahora ya
quedo resulto gracias a tu guia. ¿Has pensado en ser gurua?.

Gracias.







> Saludos,
>
> --
> Camaleón





>
>
> --
> To UNSUBSCRIBE, email to debian-user-spanish-REQUEST@lists.debian.org
> with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org
> Archive: [🔎] pan.2014.10.04.15.31.08@gmail.com">https://lists.debian.org/[🔎] pan.2014.10.04.15.31.08@gmail.com
>


Reply to: