IP=$(cat server.log | jq -r '.server["public_net"]["ipv4"]["ip"]')
ID=$( cat server.log | jq -r '.server["id"]')
NAME=$( cat server.log | jq -r '.server["name"]')
Первое, sh - отвратительный язык программирования, именно для задач работы с данными, т.е.он конечно может но сильно неудобно. В метках php, он отлично подходит для написания скриптов, поддержка json есть.
Второе, поищи для системы виртуализации готовые бинднги или библиотеки , иногда утилиты обслуживания вм есть ключи вывода информации в машиночитаемой виде, чтобы не парсить обычный текст.
Иногда вместо разработки сетевой коммуникации и сопутствующих им проблем, проще разрабатывать централизованную систему управления, запускать скрипты на удаленных машинах с помощью ssh, но реализовать скрипты так, чтобы они н отрабатывали быстро, репортуя состояния, без ожидания, особенно если система распределенная через ненадежный интернет
ssh [User_Name]@[Rremote_Host_Name or IP] [Command or Script]
RewriteCond %{HTTP_HOST} ^www\.site1\.ru$ [NC]
^(www\.|)site1\.ru$
RewriteRule ^(.*)$ https://site2.ru/$1 [R=301,L]
^(.*)$
- Выделяем весь УРЛ где скобки это как бы переменная а поскольку они тут одни то переменная $1 были бы еще одни скобки и все что вних было бы переменной $2 и тдRewriteCond %{REQUEST_FILENAME}!-f
RewriteCond %{REQUEST_URI} [A-Z]
RewriteRule ^(.*)$ ${tolower:$1}
RewriteCond %{SCRIPT_FILENAME} !-f
#Если это не файл
RewriteCond %{SCRIPT_FILENAME} !-d
# и если это не директория
RewriteRule ^(.*)$ index.php/$1
То редирект
я в нем и работаю мне нравится но конечно приходится постоянно выходить на костыли типа
jq
да наsh много чего не умеет, но не уверен что он это должен уметь. Все-же это шел а не язык в первую очередь.