Append value as parameter to shell script

Я нашел значение ответа (curl) с помощью sed и теперь мне нужна помощь, чтобы взять значение, которое я напечатал в файле, и использовать его в другой подстроке в том же скрипте . sh скрипте

Это ответ сервера:

{"status":{"code":"STATUS_OK","message":"ServiceUUID sent successfully via..."},"body":{"data":{"userApps":{},"username":"HereTheUsername","fullName":"NameOfTheAccountPossessor","lang":"sq","blocked":false,"lastLogin":"2016-10-10T17:19:22","passwordResetUuid":"6147dc32-b72e-450a-8084-2fdb5319a931","userAccessLevel":5,"countDownSeconds":0,"serviceUuid":"7260276c-5c3f-41d3-9329-3603acecb7e5","userAttributes":{},"labelMap":{},"id":"APPUSER00000012","someLabel":"NameOfTheOrganisation"}}}

Так я нашел значение "serviceUuid":

fuid=$(echo "$uuid" | sed -nE 's/.*"serviceUuid":"(.*)","user.*/\1/p' >> final.txt)

Теперь я хочу взять это значение (в файле final.txt) и вставить его в эту строку в том же файле скрипта под названием aass.sh:

login=$(curl -X POST -H "ACCEPT-LANGUAGE:en"   -H "Content-Type: application/json;charset=utf-8" -H "Accept-Encoding:gzip"   -H "Accept: application/json" -d  {"serviceUuid":"**HERE**"} UrlOfTheSite)

Как я могу сделать?

-1
13.04.2017, 15:36
1 ответ

Предполагая, что в final.txt хранится только самый последний uuid, это должно сработать ...

service_uuid=$(cat final.txt)
login=$(curl -X POST -H "ACCEPT-LANGUAGE:en"   -H "Content-Type: application/json;charset=utf-8" -H "Accept-Encoding:gzip"   -H "Accept: application/json" -d  {"serviceUuid":"${service_uuid}"} UrlOfTheSite)

Не видя всего вашего скрипта, это немного сложно точно узнать, что вы ожидаете в final.txt, но имейте в виду, что вы используете перенаправление добавления (>>), а не перезапись (>), поэтому этот файл, вероятно, будет содержать текущий список все uuid получает скрипт.

1
28.01.2020, 05:10

Теги

Похожие вопросы