heredoc variáveis entre sublinhados

1

Digamos que eu tenha algo assim,

tee filename <<EOF
...
access_log /srv/users/serverpilot/log/$APP_NAME/$APP_NAME_nginx.access.log  main;
...
EOF

em que $APP_NAME é uma variável.

O Bash interpreta $APP_NAME_nginx como uma variável e não imprime nenhum valor lá. Como eu poderia consertar isso?

    
por autorun 11.04.2015 / 01:10

1 resposta

1

Você precisa:

${APP_NAME}_nginx

Isso fará bash expandir a variável APP_NAME para seu valor e adicionar _nginx a ela.

Aqui está um teste:

$ APP_NAME=check
$ echo "$APP_NAME"
check
$ echo "$APP_NAME_var"

$ echo "${APP_NAME}_var"
check_var
    
por heemayl 11.04.2015 / 01:13