comando eval en Bash y sus usos típicos

Después de leer las páginas de manual de bash y con respecto a esto.enviar.

Todavía estoy teniendo problemas para entender qué es exactamente eleval El comando lo hace y cuáles serían sus usos típicos. Por ejemplo si hacemos:

bash$ set -- one two three  # sets $1 $2 $3
bash$ echo $1
one
bash$ n=1
bash$ echo ${$n}       ## First attempt to echo $1 using brackets fails
bash: ${$n}: bad substitution
bash$ echo $($n)       ## Second attempt to echo $1 using parentheses fails
bash: 1: command not found
bash$ eval echo \${$n} ## Third attempt to echo $1 using 'eval' succeeds
one

¿Qué está sucediendo exactamente aquí y cómo el signo del dólar y la barra invertida se relacionan con el problema?

Respuestas a la pregunta(10)

Su respuesta a la pregunta