systemd:将路径转换为 ​​systemd 单元名称格式

systemd:将路径转换为 ​​systemd 单元名称格式

如何将任意路径转换为systemd单位文件名格式?

例如,我如何将路径转换为/media/backup这样media-backup,以便我可以通过以下方式停止自动安装程序:

systemctl stop media-backup.automount

解决方案应该转义特殊字符。

答案1

你应该使用systemd-escape这是专门为此设计的:

systemd-escape -p --suffix=automount /media/backup

-p指定您要转义路径,并适当地处理/,...。特殊字符也能正确处理。因此你的命令将变成

systemctl stop "$(systemd-escape -p --suffix=automount /media/backup)"

转义规则描述于systemd.unit联机帮助页。

相关内容