Вы неправильно разместили символ равенства в my-portal.service
. Кроме того, вы должны избавиться от сценария оболочки и заставить SystemD напрямую управлять процессом.
Попробуйте это:
[Unit]
Description=My Portal Service
After=network.target
[Service]
Type=Simple
ExecStart=/usr/bin/java -jar /opt/apps/egp/stage/my-portal/target/my-portal.jar server /opt/apps/egp/stage/my-portal/target/my-portal.yml
[Install]
WantedBy=multi-user.target
Переменные не раскрываются в одинарных кавычках. В этом случае, вероятно, будет достаточно просто переключиться на двойные кавычки. Также удалите [
и ]
вокруг $domain
. С помощью квадратных скобок вы создадите выражение в квадратных скобках, которое будет соответствовать любому одиночному символу в имени домена (, но не самому фактическому имени домена ).
В итоге у вас получится что-то вроде
whois "$domain" |
grep -m1 -Eio "\b[[:alnum:]._%+-]+@$domain\b"
Я удалил бит \.[A-Z]{2,4}
в конце вашего выражения, потому что на самом деле не видел в нем никакого смысла, и я использовал символическое имя для сопоставления буквенно-цифровых символов перед знаком @
.
Дополнительным улучшением будет замена любой точки в $domain
на \.
перед ее использованием в шаблоне:
whois "$domain" |
grep -m1 -Eio "\b[[:alnum:]._%+-]+@${domain//./\\.}\b"
Для этого требуется bash
или любая другая оболочка, которая понимает нестандартную -подстановку параметров ${variable//pattern/word}
.