SYSTEMD-ESCAPE(1) | systemd-escape | SYSTEMD-ESCAPE(1) |
systemd-escape - Escape strings for usage in systemd unit names
systemd-escape [OPTIONS...] [STRING...]
systemd-escape may be used to escape strings for inclusion in systemd unit names. The command may be used to escape and to undo escaping of strings.
The command takes any number of strings on the command line, and will process them individually, one after another. It will output them separated by spaces to stdout.
By default, this command will escape the strings passed, unless --unescape is passed which results in the inverse operation being applied. If --mangle is given, a special mode of escaping is applied instead, which assumes the string is already escaped but will escape everything that appears obviously non-escaped.
For details on the escaping and unescaping algorithms see the relevant section in systemd.unit(5).
The following options are understood:
--suffix=
--template=
--path, -p
--unescape, -u
--mangle, -m
--instance
-h, --help
--version
To escape a single string:
$ systemd-escape 'Hallöchen, Meister' Hall\xc3\xb6chen\x2c\x20Meister
To undo escaping on a single string:
$ systemd-escape -u 'Hall\xc3\xb6chen\x2c\x20Meister' Hallöchen, Meister
To generate the mount unit for a path:
$ systemd-escape -p --suffix=mount "/tmp//waldi/foobar/" tmp-waldi-foobar.mount
To generate instance names of three strings:
$ systemd-escape --template=systemd-nspawn@.service 'My Container 1' 'containerb' 'container/III' systemd-nspawn@My\x20Container\x201.service systemd-nspawn@containerb.service systemd-nspawn@container-III.service
To extract the instance part of an instantiated unit:
$ systemd-escape -u --instance 'systemd-nspawn@My\x20Container\x201.service' My Container 1
To extract the instance part of an instance of a particular template:
$ systemd-escape -u --template=systemd-nspawn@.service 'systemd-nspawn@My\x20Container\x201.service' My Container 1
On success, 0 is returned, a non-zero failure code otherwise.
systemd 241 |