템플릿 서비스 단위에 하이픈 매개변수(플래그)를 전달하는 방법은 무엇입니까?

템플릿 서비스 단위에 하이픈 매개변수(플래그)를 전달하는 방법은 무엇입니까?

[email protected]내 템플릿 서비스 단위입니다.

[Unit]
Description=my service unit     

[Service]
Type=oneshot
ExecStart=/home/username/scripts/myprogram.py %I

나는 ~ %I가되고 싶다--arg1 --arg2=/path/to/something

나는 노력했다 ...

systemctl start myservice@'--arg1 --arg2=/path/to/something'.service

하지만 --arg1이는 좋지 않은 선택이라고 생각합니다 systemctl. 그리고...

systemctl start $(systemd-escape --template [email protected] '--arg1 --arg2=/path/to/something'

--arg1좋지 않은 선택 으로 간주됩니다 systemd-escape.

도와주세요

답변1

ExecStart=/bin/sh -c %I쉘이 공백을 확장하도록 할 수 있습니까 =? 인스턴스 이름을 지정하려고 할 때 우연히 이것을 발견했는데 그것은 나에게 도움이 되었습니다.2020년 이 질문은 이렇게 말합니다.템플릿에 여러 필드를 구현하지 않으며 다음을 제안합니다.사용자매개변수의 인스턴스 이름을 확인하기 위해 스크립트가 사용되고 있습니다.keszybz의 답변(제 생각에는 시스템 개발자)

이런 상황은 이전에도 발생했으며 우리는 여러 인스턴스를 허용하지 않기로 결정했습니다. 원하는 경우 여러 필드를 셀별 방식으로 하나의 값으로 인코딩하거나 인스턴스를 디스크의 디렉터리와 같은 일부 외부 저장소에 대한 키로 사용할 수 있습니다. 죄송합니다.

관련 정보