SYSTEMD-ESCAPE(1)

NAME
systemd-escape - 轉義與還原單元名稱中的特殊字元

SYNOPSIS

systemd-escape [OPTIONS...] [STRING...]

描述

systemd-escape 可用於 轉義單元名稱中的特殊字元， 也可用於還原操作。

可以在命令列上指定任意數量的字串， 表示依次分別處理它們。 處理結果將使用空格分隔。

預設的行為是轉義操作， 但若使用了 --unescape 選項， 則表示反向的還原操作。如果使用了 --mangle 選項， 則會使用一種特殊的轉義規則， 也就是假定字串已經經過了轉義， 僅轉義那些顯而易見必須轉義的字元。

選項

能夠識別的命令列選項如下：

--suffix=
    在輸出結果尾部新增一個單元型別字尾。 必須是 ".service" 或 ".mount" 這樣實際有效的字尾。不能與 --template=, --unescape , --mangle 選項一起使用。

--template=
    將轉義之後的結果插入一個單元名稱模版。 接收一個類似 foobar@.service 這樣的模版名。 不能與 --suffix=, --unescape, --mangle 選項一起使用。

--path, -p
    在轉義或還原字串時， 假定其是一個檔案系統路徑。 這將會對字串頭的 "/" 字元進行特殊處理。

--unescape
    將已經轉義過的字串還原。 不能與 --suffix=, --template=, --mangle 選項一起使用。

--mangle
    與 --escape 類似， 但是僅轉義那些顯而易見必須轉義的字元， 並且允許自動新增適當的單元型別字尾。 不能與 --suffix=, --template=, --unescape 選項一起使用。

-h, --help
    顯示簡短的幫助資訊並退出。

--version
    顯示簡短的版本資訊並退出。

例子

轉義一個字串

    $ systemd-escape 'Hallöchen, Meister'
    Hall\xc3\xb6chen\x2c\x20Meister

還原一個字串

    $ systemd-escape -u 'Hall\xc3\xb6chen\x2c\x20Meister'
    Hallöchen, Meister

為一個路徑生成對應的單元名

    $ systemd-escape -p --suffix=mount "/tmp//waldi/foobar/"
    tmp-waldi-foobar.mount

從三個字串派生三個對應的例項單元名

    $ 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

退出狀態

返回值為 0 表示成功， 非零返回值表示失敗程式碼。

參見

systemd(1), systemctl(1)

跋
本頁面中文版由中文 man 手冊頁計劃提供。

翻譯人員：金步國
金步國作品集：http://www.jinbuguo.com
中文 man 手冊頁計劃：https://github.com/man-pages-zh/manpages-zh