elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Arreglado, de nuevo, el registro del warzone (wargame) de EHN


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  ayuda script shell
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: ayuda script shell  (Leído 1,906 veces)
unnatural

Desconectado Desconectado

Mensajes: 4


Ver Perfil
ayuda script shell
« en: 29 Noviembre 2007, 17:58 pm »

Hola a todos. La verdad es que no tengo mucha idea aún pero estoy en ello. La historia es que estoy haciendo un pequeño ejercicio de programacion en shell muy sencillito que es para comprobar que una clave introducida tenga entre un numero de digitos definidos y la cuestion esta en que no soy capaz de solucionar el fallo. Se que el problema lo tengo en el while y me parece que es que no es capaz de hacerme el test con dos condiciones diferentes sobre la misma variable. ¿Pero entonces como lo hago? Aquí dejo el script para que me podais ayudar. Muchas gracias.

#!/bin/bash
#Este programa pide que introduzcamos una clave
#y comprueba que sea mayor de 5 caracteres y menor de 10
i=0
while [ "$i" -lt 5  ]  && [ "$i" -gt 10 ]
do
echo "POR FAVOR, INTRODUZCA UNA CLAVE"
read password
i=${#password}
if [ "$i" -lt 5 ];
then
echo "NUMERO DE DIGITOS MENOR DE 5"
elif [ "$i" -gt 10 ];
then
echo "NUMERO DE DIGITOS MAYOR DE 10"
else
echo "CLAVE GUARDADA"
fi
done


En línea

over crash

Desconectado Desconectado

Mensajes: 57



Ver Perfil
Re: ayuda script shell
« Respuesta #1 en: 29 Noviembre 2007, 18:46 pm »

El problema que tienes es que estas poniendo and en vez de or aqui te lo doy corregido:
#!/bin/bash
#Este programa pide que introduzcamos una clave
#y comprueba que sea mayor de 5 caracteres y menor de 10
i=0;
while [ "$i" -lt 5 ] || [ "$i" -gt 10 ]
do
echo "POR FAVOR, INTRODUZCA UNA CLAVE"
read password
i=${#password}
if [ "$i" -lt 5 ];
then
echo "El numero de digitos de la clave es inferior a 5"
elif [ "$i" -gt 10 ];
then
echo "El numero de digitos de la clave es mayor de 10"
else
echo "CLAVE CORRECTA"
fi
done


En línea

Ser consciente de la propia ignorancia es un gran paso hacia el saber.
unnatural

Desconectado Desconectado

Mensajes: 4


Ver Perfil
Re: ayuda script shell
« Respuesta #2 en: 29 Noviembre 2007, 18:48 pm »

Ok. Muchas Gracias. Problemas resuelto, siempre se falla en lo mas tonto ;D
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Ayuda shell script basico
Scripting
juancaa 2 2,628 Último mensaje 27 Enero 2012, 14:11 pm
por risto
Necesito ayuda en shell script linux
Scripting
cnxi 1 3,069 Último mensaje 15 Diciembre 2011, 01:44 am
por leogtz
[AYUDA] Shell-Script
Scripting
syncro_7 6 2,337 Último mensaje 12 Octubre 2015, 14:24 pm
por syncro_7
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines