Linux/Unix Shell Scripting - ¿Que le falla a este script?

 
Vista:

¿Que le falla a este script?

Publicado por rotciv (4 intervenciones) el 12/02/2018 15:36:54
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
#!/bin/bash
    r=0
    s=0
until [[ $s -eq "s"||$s -eq "S" ]];
do
    echo " introduce tu año de nacimiento para conocer que signo del zodiaco chino eres ";
    read -n 4 a;
    echo " el año introducido es "$a " ¿Es correcto? S/N";
   read -n 1 s;
done
 
    let r=$a%12
 
    echo " el numero es "$r;
 
    case $r in
 
    0)
        echo " El mono";;
    1)
        echo " El gallo";;
    2)
        echo " El perro";;
    3)
        echo " El cerdo";;
    4)
        echo " La rata";;
    5)
        echo " El buey";;
    6)
        echo " El tigre";;
    7)
        echo " El conejo";;
    8)
        echo " El dragón";;
    9)
        echo " La serpiente";;
 
    esac
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil

¿Que le falla a este script?

Publicado por Francisco (1 intervención) el 12/02/2018 16:58:44
Buenas,

Así ya debería funcionarte.

- Recuerda que siempre que vayas a comparar un string usar "=="
- El echo -e "\n", es para ejecutar el salto de línea y que no lo muestre en pantalla (Según como tengas configurado el bash puede hacerte falta)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#!/bin/bash
r=0
s=0
until [[ $s == "s" || $s == "S" ]]; do
	echo "Introduce tu año de nacimiento para conocer que signo del zodiaco chino eres:";
	read -n 4 a;
	echo -e "\n";
	echo "El año introducido es "$a" ¿Es correcto? S/N";
	read -n 1 s;
	echo -e "\n";
done
 
let r=$a%12
 
echo "El numero es "$r;
 
case "$r" in
	0 ) echo "El mono";;
	1 ) echo "El gallo";;
	2 ) echo "El perro";;
	3 ) echo "El cerdo";;
	4 ) echo "La rata";;
	5 ) echo "El buey";;
	6 ) echo "El tigre";;
	7 ) echo "El conejo";;
	8 ) echo "El dragón";;
	9 ) echo "La serpiente";;
	*) echo "No presente";;
esac
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

¿Que le falla a este script?

Publicado por rotciv (4 intervenciones) el 16/04/2018 20:48:24
Muchisimas gracias Francisco
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar