Невозможно передать значение переменной команде curl в файле preseed
Вот мой preseed late_command:
di preseed/late_command string \ in-target IP=$(ifconfig eno1 | grep "inet\b" | awk '{print $2}'); \ in-target curl -X post --data-urlencode 'playload={"text": "IP-адрес" $IP ""}' https://hooks.slack.com/incoming-webhook-url
В слабом канале он печатает только "IP address is", значение $IP не печатается. Как передать значение переменной, чтобы расслабиться? Любые предложения будут оценены.
1 ответ
У тебя есть $IP
переменная между одинарными кавычками ('
).
Это предотвращает расширение оболочки. Например:
echo '$IP'
addr:192.168.1.1
в то время как
echo '$IP'
$IP
Пройти payload
строка без кавычек:
d-i preseed/late_command string \
in-target IP=$(ifconfig eno1 | grep "inet\b" | awk '{print $2}'); \
in-target curl -X post --data-urlencode playload={"text": "IP address is $IP"}