Re: OT sobre if en script de bash
El 27/09/16 a las 15:22, Gonzalo Rivero escribió: > El mar, 27-09-2016 a las 14:24 +0200, Antonio Trujillo Carmona > escribió: >> Siento molestar por algo que parece simple pero llevo hora buscando y >> me >> trae loco algo que no comprendo: >> >> Si en consola pongo: >> >> if [ ${EA:0:1} != '#' ] ; then echo "no es comentario ;fi >> >> Funciona perfectamente, >> >> si pongo este escript: >> >> #!/bin/sh >> PATH=/bin:/usr/bin:/usr/bin/X11 >> EA="La casa" >> >> if [ ${EA:0:1} != '#' ] >> then >> echo "no es comentario" >> else >> echo "es un comentario" >> fi >> >> me da: >> >> # ./ea1 >> ./ea1: 5: ./ea1: Bad substitution > probablemente no estés usando bash y sea un "bashismo": > ls -l /bin/sh > set|grep SHELL > > fijate si apuntan a lo mismo. En mi debian /bin/sh es dash, y mi shell > es bash > > Muchas gracias a todos. -- *Antonio Trujillo Carmona* *Técnico de redes y sistemas.* *Subdirección de Tecnologías de la Información y Comunicaciones* Servicio Andaluz de Salud. Consejería de Salud de la Junta de Andalucía _antonio.trujillo.sspa@juntadeandalucia.es_ Tel. +34 670947670 747670)
Re: OT sobre if en script de bash
El mar, 27-09-2016 a las 14:24 +0200, Antonio Trujillo Carmona escribió: > Siento molestar por algo que parece simple pero llevo hora buscando y > me > trae loco algo que no comprendo: > > Si en consola pongo: > > if [ ${EA:0:1} != '#' ] ; then echo "no es comentario ;fi > > Funciona perfectamente, > > si pongo este escript: > > #!/bin/sh > PATH=/bin:/usr/bin:/usr/bin/X11 > EA="La casa" > > if [ ${EA:0:1} != '#' ] > then > echo "no es comentario" > else > echo "es un comentario" > fi > > me da: > > # ./ea1 > ./ea1: 5: ./ea1: Bad substitution probablemente no estés usando bash y sea un "bashismo": ls -l /bin/sh set|grep SHELL fijate si apuntan a lo mismo. En mi debian /bin/sh es dash, y mi shell es bash
Re: OT sobre if en script de bash
El día 27 de septiembre de 2016, 14:24, Antonio Trujillo Carmonaescribió: > Siento molestar por algo que parece simple pero llevo hora buscando y me > trae loco algo que no comprendo: > > Si en consola pongo: > > if [ ${EA:0:1} != '#' ] ; then echo "no es comentario ;fi > > Funciona perfectamente, > > si pongo este escript: > > #!/bin/sh > PATH=/bin:/usr/bin:/usr/bin/X11 > EA="La casa" > > if [ ${EA:0:1} != '#' ] > then > echo "no es comentario" > else > echo "es un comentario" > fi > > me da: > > # ./ea1 > ./ea1: 5: ./ea1: Bad substitution > -- > > *Antonio Trujillo Carmona* > Hola. Tendría que repasar el shell pero estás usando algo de bash y al poner #!/bin/sh no se usará bash. si pones #!/bin/bash funciona. S2.
OT sobre if en script de bash
Siento molestar por algo que parece simple pero llevo hora buscando y me trae loco algo que no comprendo: Si en consola pongo: if [ ${EA:0:1} != '#' ] ; then echo "no es comentario ;fi Funciona perfectamente, si pongo este escript: #!/bin/sh PATH=/bin:/usr/bin:/usr/bin/X11 EA="La casa" if [ ${EA:0:1} != '#' ] then echo "no es comentario" else echo "es un comentario" fi me da: # ./ea1 ./ea1: 5: ./ea1: Bad substitution -- *Antonio Trujillo Carmona* *Técnico de redes y sistemas.* *Subdirección de Tecnologías de la Información y Comunicaciones* Servicio Andaluz de Salud. Consejería de Salud de la Junta de Andalucía _antonio.trujillo.sspa@juntadeandalucia.es_ Tel. +34 670947670 747670)