web-dev-qa-db-fra.com

Systemd ExecStartPre récupère les variables avant ExecStart sur la ligne suivante

sur Systemd je voudrais exécuter la commande suivante qui fonctionne correctement sur Shell manuellement:

/usr/bin/company_program --init.d `/usr/bin/lua -l company_exec -e 'dofile("/etc/company_profiles"); print(table.concat(company_exec.table_to_companyexec_argv(default), " "))'`

Comment pourrais-je le transférer à ExecStartPre qui exécute:

/usr/bin/lua -l company_exec -e 'dofile("/etc/company_profiles"); print(table.concat(company_exec.table_to_companyexec_argv(default), " "))'

Ensuite, envoyez le résultat à ExecStart qui exécute:

/usr/bin/company_program --init.d `${previous_execstartpre_lua_result}`
1
Thomas G. Lau

Placez les deux lignes dans un script et exécutez-le à partir d'une seule commande ExecStart=.

1
Mark Stosberg