BEZEICHNUNG
systemd-escape - Zeichenketten für die Verwendung in Systemd-Unit-Namen maskieren
ÜBERSICHT
systemd-escape [OPTIONEN…] [ZEICHENKETTE…] |
BESCHREIBUNG
systemd-escape kann dazu verwandt werden, Zeichenketten für die Aufnahme in Systemd-Unit-Namen zu maskieren. Der Befehl kann zum Maskieren und zur Entfernung der Maskierung von Zeichenketten verwandt werden.
Der Befehl akzeptiert auf der Befehlszeile eine beliebige Anzahl von Zeichenketten und verarbeitet diese individuell, eine nach der anderen. Es wird sie durch Leerzeichen getrennt auf der Standardausgabe ausgeben.
Standardmäßig wird dieser Befehl übergebene Zeichenketten maskieren. Falls --unescape übergeben wird, dann wird die umgedrehte Aktion angewandt. Falls --mangle angegeben ist, wird stattdessen ein spezieller Maskiermodus angewandt, der annimmt, dass eine Zeichenkette bereits maskiert ist, aber alles maskiert, was offensichtlich noch nicht maskiert aussieht.
Für Details zu den Maskier- und Demaskier-Algorithmen siehe den relevanten Abschnitt in systemd.unit(5).
OPTIONEN
Die folgenden Optionen werden verstanden:
--suffix=
Hängt die festgelegte Unit-Typ-Endung an die maskierte Zeichenkette an. Akzeptiert eine der von Systemd unterstützen Unit-Typen, wie »service« oder »mount«. Darf nicht zusammen mit --template=, --unescape oder --mangle verwandt werden.
--template=
Fügt die geschützte Zeichenkette in eine Unit-Namensvorlage ein. Akzeptiert eine Unit-Namensvorlage wie foobar@.service. Erwartet bei --unescape einen instanziierten Unit-Namen für die Vorlage und löst nur den Instanzenanteil aus und demaskiert ihn. Darf nicht mit --suffix=, --instance oder --mangle zusammen verwandt werden.
--path, -p
Beim Maskieren und Demaskieren einer Zeichenkette wird angenommen, dass sie sich auf einen Dateisystempfad bezieht. Damit werden führende, anhängende und doppelte »/«-Zeichen entfernt und ».«- und »..«-Pfadkomponenten zurückgewiesen. Dies ist insbesondere für die Generierung von Zeichenketten, die für das Demaskieren mit dem »%f«-Kennzeichner in Unit-Dateien geeignet sind, geeignet, siehe systemd.unit(5).
--unescape, -u
Nimmt die Maskierung zurück, anstatt die angegebenen Zeichenketten zu maskieren und invertiert daher die Aktion. Darf nicht zusammen mit --suffix= oder --mangle verwandt werden.
--mangle, -m
Ähnlich --escape, maskiert aber nur Zeichen, die offensichtlich noch nicht maskiert sind und hängt möglicherweise automatisch eine geeignete Unit-Typ-Endung an die Zeichenkette an. Darf nicht zusammen mit --suffix=, --template= oder --unescape verwandt werden.
--instance
Demaskiert und gibt bei --unescape nur den Instanzenanteil der instanziierten Unit-Namensvorlage aus. Im Falle von nicht instanziierten Vorlagen wie ssh@.service oder Nichtvorlagennamen wie ssh.service führt dies zu einem Fehler. Muss zusammen mit --unescape und darf nicht mit --template zusammen verwandt werden.
-h, --help
Zeigt einen kurzen Hilfetext an und beendet das Programm.
--version
Zeigt eine kurze Versionszeichenkette an und beendet das Programm.
BEISPIELE
Um eine einzelne Zeichenkette zu maskieren:
$
systemd-escape 'Hallöchen, Meister'
Hall\xc3\xb6chen\x2c\x20Meister
Um die Maskierung einer einzelnen Zeichenktte zurückzunehmen:
$
systemd-escape -u 'Hall\xc3\xb6chen\x2c\x20Meister'
Hallöchen, Meister
Um eine Einhänge-Unit für einen Pfad zu generieren:
$
systemd-escape -p --suffix=mount
"/tmp//waldi/foobar/"
tmp-waldi-foobar.mount
Um Namensintanzen von drei Zeichenketten zu erzeugen:
$
systemd-escape --template=systemd-nspawn@.service 'My
Container 1' 'containerb' 'container/III'
systemd-nspawn@My\x20Container\x201.service
systemd-nspawn [AT] containerb.service
systemd-nspawn [AT] container-III.service
Um den Instanzenanteil einer instanziierten Unit herauszulösen:
$
systemd-escape -u --instance
'systemd-nspawn@My\x20Container\x201.service'
Mein Container 1
Um den Instanzenanteil einer bestimmten Vorlage herauszulösen:
$
systemd-escape -u --template=systemd-nspawn@.service
'systemd-nspawn@My\x20Container\x201.service'
Mein Container 1
EXIT-STATUS
Bei Erfolg wird 0 zurückgegeben, anderenfalls ein Fehlercode ungleich Null.
SIEHE AUCH
systemd(1), systemd.unit(5), systemctl(1)
ÜBERSETZUNG
Die deutsche Übersetzung dieser Handbuchseite wurde von Helge Kreutzmann <debian [AT] helgefjell.de> erstellt.
Diese Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 oder neuer bezüglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen.
Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an <debian-l10n-german [AT] lists.org>.