Duda bash scripting

JoSuK

Bueno tengo un pequeño problema haciendo un script y es que no consigo evaluar expresiones escritas
por ejemplo en python si hago

a=raw_input("si o no")
while a != "no":
print" di que si"
else:
print "lalla"

pero en bash no consigo evaluar texto por ejemplo

echo "si o no"
read input
while $input != "si"
do echo "di si"

pepe@Bahamut pepe $ ./pruebabashito
di si o no
no
./pruebabashito: line 4: no: command not found

podria asignar a si o no variables numericas pero lo veo muy engorroso

Sandevil

A mi me daba error de sintaxis tal como lo has escrito en una gentoo

Para que fone deberia ser algo asi:

#!/bin/bash
echo "si o no"
read input
while [ $input != "si" ];do
echo "di si"
read input //Me he permitido añadir esta linea, para que no te cree un bucle infinito xD
done
echo "lalalal"

El error lo tenias en la sintaxis de while que es
while [ comparacion ]; do //los espacios son importantes
comando1
comando 2
.....
done

JoSuK

vale ya encontre el error tenia $foo entre parentesis thx ^^

Usuarios habituales

  • JoSuK
  • Sandevil