Estoy tratando de usar systemd
's EnvironmentFile
y agregar una opción al comando cuando está configurado en el archivo. Tengo lo siguiente en el archivo de la unidad:
ExecStart=/usr/bin/bash -c "echo ${PORT:+port is $PORT}"
que no hace eco de nada cuando inicio el servicio.
Lo siguiente funciona como se esperaba:
ExecStart=/usr/bin/bash -c "echo port is $PORT"
lo que significa que el archivo se lee correctamente.
La sustitución de parámetros también funciona en la línea de comando:
$ PORT=1234 bash -c 'echo ${PORT:+port is $PORT}'
port is 1234
¿Qué me estoy perdiendo?
fuente