$ USER já definido ao querer ler o nome de usuário do usuário

0

Eu fiz este código

while [ -z "$USER" ]; do
    >&2 echo -n 'Your desired User : '
    read USER
done

Mas isso não funciona porque $USER é obtido do usuário atual que está executando o script, que não é o que eu quero.

Como posso evitar isso no futuro para a variável $USER e também outras variáveis onde isso poderia acontecer? Como $PATCH ou similar

    
por Freedo 21.10.2017 / 10:48

1 resposta

2

Use nomes de variáveis em letras minúsculas ou saiba exatamente quais nomes de variáveis em letras maiúsculas devem ser evitados.

Para variáveis que não são de ambiente (por exemplo, variáveis de shell), use apenas letras minúsculas:

while [ -z "$user" ]; do
    read -p 'User name: ' user
done
    
por 21.10.2017 / 10:51