asantos38 Postado Maio 20, 2018 Denunciar Share Postado Maio 20, 2018 Boa tarde a todos. Estou aprendendo a escrever shell scripts, e esbarrei em um erro que até agora não consegui resolver. O Sistema é o Ubuntu 18. Seguem o código e a mensagem de erro: #!/bin/bash echo "Digite seu nome:" read nome if [ -z $nome ] ; then echo "Você não digitou seu nome!" else echo "Boa tarde, $nome!" fi Digite seu nome: Fernando Santos ./login2.sh: linha 7: [: Fernando: esperava operador binário Boa tarde, Fernando Santos! Desde já agradeço! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 navegantenarede Postado Maio 23, 2018 Denunciar Share Postado Maio 23, 2018 Tenta colocar a váriavel entre aspas, assim: #!/bin/bash echo "Digite seu nome:" read -r nome if [ -z "$nome" ] ; then echo "Você não digitou seu nome!" else echo "Boa tarde, $nome!" fi As aspas vão evitar problemas com caracteres especiais e espaços. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 asantos38 Postado Maio 26, 2018 Autor Denunciar Share Postado Maio 26, 2018 Sua dica deu certo, navegantenarede. Obrigado!! Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
asantos38
Boa tarde a todos.
Estou aprendendo a escrever shell scripts, e esbarrei em um erro que até agora não consegui resolver. O Sistema é o Ubuntu 18.
Seguem o código e a mensagem de erro:
Digite seu nome:
Fernando Santos
./login2.sh: linha 7: [: Fernando: esperava operador binário
Boa tarde, Fernando Santos!
Desde já agradeço!
Link para o comentário
Compartilhar em outros sites
2 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.