Lendo a entrada do usuário com leitura de volta

0

quando eu uso o comando bash simples

#!/bin/bash
echo Please, enter your name
read NAME
echo "Hi $NAME!"

e executá-lo usando source filename.sh , isso me dá um erro :Undefined variable

qual poderia ser o problema? Eu procuro mas não há solução.

    
por Loura 20.04.2016 / 07:51

1 resposta

4

Resumo para referência futura:

O shebang aponta para /bin/bash , mas o comando source faz o código ser executado em um shell atual que acabou sendo csh .

O código funciona no meu bash no Debian e não funciona no meu csh , quando invocado com source filename.sh . No entanto, parece que a intenção do OP foi executá-lo com bash .

Para que seja executado com bash como pretendido, ele precisa ser executado como executável ( chmod a+x filename.sh ) e invocado por ./filename.sh .

E finalmente, o #!/bin/bash shebang teve um caminho errado neste caso específico.

    
por 20.04.2016 / 09:49