Variáveis ​​de cifrão em variáveis

Variáveis ​​de cifrão em variáveis

Prezados, alguém pode explicar o motivo da saída 5 quando eu ecoo $15. Se a variável 15 não estiver definida, não deverá haver saída como no segundo exemplo

-bash-4.2$ echo $15
5
-bash-4.2$ echo ${15}

-bash-4.2$ echo $USER
kony
-bash-4.2$
-bash-4.2$ echo ${USER}
kony

Responder1

O cifrão é reservado, especificamente $0, $1 etc., para assumir argumentos. Você precisa escapar do cifrão para imprimir o valor ou colocá-lo entre aspas simples.

Experimente um destes:

echo \$15
echo '$15'

Sempre haverá uma saída para o seu comando porque você está efetivamente dizendo "echo 5". Como não há valor, $1ele está sendo ignorado. $0 - $9 são todos reservados pelo sistema para referenciar argumentos. echo $90retornaria 0. etc.

Referência

informação relacionada