В вашем сценарии нет проблемы, которая могла бы превратиться в пепел.
Ну, кроме того, что вы делаете echo content="...."
. Это напечатает в выводе слово content=
, присоединенное к выводу команды в кавычках.
Если вы хотите установить значение переменной, а затем распечатать его, выполните:
#!/bin/ash
domain="mydomain.com"
record="11019653"
api_key="key1234"
ip="$(curl http://ipecho.net/plain)"
content="$(curl \
-k \
-H "Authorization: Bearer $api_key" \
-H "Content-Type: application/json" \
-d '{"data": "'"$ip"'"}' \
-X PUT "https://api.digitalocean.com/v2/domains/$domain/record/$record")"
echo "$content"
Программа busybox будет действовать как оболочка, если связать ее с именем ash:
ln -s /bin/busybox /bin/ash
Даже в вашем текущем каталоге (или тестовом):
ln -s /bin/busybox ash
Затем вы можете запустить его, набрав ./ash
, если в PWD, или ash
, если в каталоге PATH. Вы можете протестировать команды и сценарии из него, если хотите, или использовать bash в качестве оболочки и запускать сценарии с помощью ash script.sh
или (лучше) ./script.sh
, если она-банг файла #!/bin/ash
person
Community
schedule
28.12.2015