Hola On Sat, Sep 16, 2006 at 04:10:00PM -0400, Marcel Rodolfo Sanchez Gongora wrote: > > Hola amigos. > Necesito comprobar si la salida de un comado determinado tiene o no tal > expresion regular. > Se me ocurre hacerlo de esta forma y todo va perfecto asi: > > if [ -z $(echo "algo_sin_espacios" |grep "os") ]; then > echo "No" > else > echo "Si" > fi > > Pero si la salida tiene espacios como muesto debajo no me funciona: > > if [ -z $(echo "algo con espacios" |grep "os") ]; then > echo "No" > else > echo "Si" > fi > > este es el error que me da: > [: too many arguments > > Alguien me podria dar recomendaciones???
Tras -z bash espera una cadena (string) y no varias "palabras" que es lo que obtiene. Escríbelo como sigue y te funcionará. if [ -z "$(echo "algo con espacios" |grep "os")" ]; then echo "No" else echo "Si" fi > Gracias por su tiempo. De nada. Saludos. Diego Bote -- ************************************************************************* Diego Bote Barco Escuela de Ingenierías Industriales Área de Matemática Aplicada Avda. de Elvas s/nº Departamento de Matemáticas C.P.: 06071 BADAJOZ Universidad de Extremadura Tlf.: 924 289600 ext 6754 Fax: 924 289601 correo-e: dbote (en) unex (punto) es ************************************************************************* -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]