Título: [SOLUCIONADO][SH] Error al ejecutar script, [: falta un `]' Publicado por: JoseluCross en 21 Febrero 2016, 17:06 pm Hola a todos, estoy aprendiendo un poco de scripting en SH y probando con if else he tenido el problema que he puesto en el título, no se bien que es lo que tengo que hacer ni que es ese ` que falta. Muchas gracias de antemano.
El código del script es Código: #!/bin/sh Código: joselucross@Cross-PC:~$ comprimir prueba Título: Re: [SH] Error al ejecutar script, [: falta un `]' Publicado por: wuwu8 en 21 Febrero 2016, 20:20 pm #!/bin/sh
echo Introduzca el formato, 1 tar, 2 tar.gz, 3 tar.bz2 read format if [ $format -eq 1 ];then tar cf $1.tar $1 echo Se ha comprimido $1 en $1.tar elif [ $format -eq 2 ];then tar czf $1.tar.gz $1 echo Se ha comprimido $1 en $1.tar.gz elif [ $format -eq 3 ];then tar cjf $1.tar.bz2 $1 echo Se ha comprimido $1 en $1.tar.bz2 else echo Formato no incluido, reinicie el script fi La variable format dentro del if va sin comillas y los iguales se pone -eq (=) Título: Re: [SH] Error al ejecutar script, [: falta un `]' Publicado por: JoseluCross en 21 Febrero 2016, 20:37 pm #!/bin/sh echo Introduzca el formato, 1 tar, 2 tar.gz, 3 tar.bz2 read format if [ $format -eq 1 ];then tar cf $1.tar $1 echo Se ha comprimido $1 en $1.tar elif [ $format -eq 2 ];then tar czf $1.tar.gz $1 echo Se ha comprimido $1 en $1.tar.gz elif [ $format -eq 3 ];then tar cjf $1.tar.bz2 $1 echo Se ha comprimido $1 en $1.tar.bz2 else echo Formato no incluido, reinicie el script fi La variable format dentro del if va sin comillas y los iguales se pone -eq (=) Me sigue dando el mismo error, cambiando exactamente lo que me has dicho sigue sin funcionar. :-( [EDITO]Al final lo solucioné, el problema estaba que entre los números y el corchete no había un espacio. Si a alguién más tiene ese mismo error ya sabes cual es el origen. Muchas gracias a wuwu8 por su ayuda |