Gracias a todos por su pronta respuesta!
Por lo q me pasaron, una solucion (sin usar perl, solo usando bash) fue
la de utilizar el comando SED.
Me costo bastante entender como funciona este pequeño comando, y recien
empiezo a tomarle la mano, pero veo q las posibilidades son infinitas...
Les dejo para futura referencia, por si le sirve a alguien mas, una
pagina donde explica como funciona este comando, y como quedo mi script
bash funcionando:
http://www.unet.univie.ac.at/aix/aixprggd/genprogc/manip_strings_sed.htm
Este es mi script terminado:
#!/bin/bash
REPETIR=s
while [ "$REPETIR" = s ]
do
echo "MAC a agregar?"
read MAC
if [ "`echo $MAC | sed -n
"/^\([0-9A-Fa-f][0-9A-Fa-f]:\)\{5\}[0-9A-Fa-f][0-9A-Fa-f]$/p"`" = "" ]
then
echo "MAC incorrecta"
else
echo "Nombre del equipo al que corresponde la MAC?"
read EQUIPO
echo -e "$MAC\t# $EQUIPO\t|- $DESCRIPCION" >>
/home/chronos/mac_list.txt
fi
REPETIR=n
echo "Agregar otra MAC? (s/N)"
read REPETIR
done
Si alguien ve q estoy usando mal el comando SED o q el "while"no es la
forma correcta de repetir el proceso, avisenme por favor. Otra cosa de
la q no estoy seguro es la de comparar la salida del comando SED con un
string vacio... Parece medio extraño eso.
Nuevamente, gracias a todos!
Saludos!
Juan Marcelo Rodríguez wrote:
El 13/12/07, Sebastian muniz <[EMAIL PROTECTED]> escribió:
Jose I. Aizpun escribió:
Hola,
Estoy haciendo un script de BASH para entender como funciona el tema
de scripting, y se me ocurrio tratar de realizar la validacion de los
datos que ingresa el usuario. Pero por mas q busque bastante, no logro
encontrar algo q me sirva.
El script seria el siguiente:
#!/bin/bash
echo "MAC a agregar?"
read MAC
echo "Nombre del equipo al que corresponde la MAC?"
read EQUIPO
echo -e "$MAC\t# $EQUIPO\t|- $DESCRIPCION" >> /home/chronos/mac_list.txt
Yo querria validar que lo q ingresa el usuario al principio sea
realmente una MAC, del estilo AB:CD:EF:12:34:56
Tal vez me busque un ejemplo medio complicado para empezar jaja, pero
como se podra hacer esto?
Gracias a todos!
Debieras usar expresiones regulares en bash...
Quizas te convenga en perl o php... desconozco.
Salu2!
Sí, creo que Perl le vendria bien. En el link que te pasé hay algunos
ejemplos de perl.
Igual con grep y egrep y sus amigos podés trabajar.
slds.
Juan
--
Para desuscribirte tenés que visitar la página
https://listas.linux.org.ar/mailman/listinfo/lugar-gral/
/* Publica y encontra trabajo relacionado con softlibre en
http://www.usla.org.ar/modules/jobs/ */
Si tenés algún inconveniente o consulta escribí a mailto:[EMAIL PROTECTED]