man: systemd.exec - explicit Environment assignment

Hi all,

while working on another bug, I discovered the "strange" way systemd is
parsing Environment= in .service and thought it was worth documenting
(because I don't expect people to find this syntax by themselves unless
they read the parsing code ;)

Be more verbose about using space in Environment field and not
using value of other variables

Fixes https://bugzilla.redhat.com/show_bug.cgi?id=840260

[zj: expand and reformat the example a bit]
This commit is contained in:
Frederic Crozat 2013-01-24 18:06:00 +01:00 committed by Zbigniew Jędrzejewski-Szmek
parent aa7cb20983
commit 0ae9c92a93

View file

@ -286,9 +286,24 @@
empty string is assigned to this
option the list of environment
variables is reset, all prior
assignments have no effect. See
assignments have no effect.
Variable expansion is not performed
inside the strings, and $ has no special
meaning.
If you need to assign a value containing spaces
to a variable, use double quotes (")
for the assignment.</para>
<para>Example:
<programlisting>Environment="VAR1=word1 word2" VAR2=word3 "VAR3=word 5 6"</programlisting>
gives three variables <literal>VAR1</literal>,
<literal>VAR2</literal>, <literal>VAR3</literal>.
</para>
<para>
See
<citerefentry><refentrytitle>environ</refentrytitle><manvolnum>7</manvolnum></citerefentry>
for details.</para></listitem>
for details about environment variables.</para></listitem>
</varlistentry>
<varlistentry>
<term><varname>EnvironmentFile=</varname></term>