Tengo una variable llamada filepath=/tmp/name .
Para acceder a la variable, sé que puedo hacer esto: $filepath
En mi script de shell intenté hacer algo como esto (las comillas invertidas están destinadas)
`tail -1 $filepath_newstap.sh`
Esta línea falla, duuh !, porque la variable no se llama $filepath_newstap.sh
¿Cómo agrego _newstap.shel nombre de la variable?
Tenga en cuenta que las comillas inversas están destinadas a la evaluación de expresiones.

set -uqué hace que el script se anule si hace referencia a una variable indefinida.${}y comillas dobles? ¿Debería preferir uno sobre el otro?Use llaves alrededor del nombre de la variable:
fuente
$filepath_newstap.shestaba interpretando${filepath_newstap}.shmás que como lo previsto${filepath}_newstap.sh, lo que resolvería el problema."$filepath"_fooy${filepath}_fooambos se expandirían a/tmp/name_foo. Sin embargo,'$filepath'_foo,"$"filepath_foo, y$"filepath"_fooharía todo expansión evitar por completo. Es por eso queexport PATH=$PATH:$addpathfunciona para agregar:$addpath(que estaría sujeto a la expansión de parámetros) a laPATHvariable de entorno.En Bash:
fuente