используя переданные аргументы в скрипте bash - PullRequest
0 голосов
/ 28 мая 2019

Я передаю два значения даты в скрипт и пытаюсь использовать их в команде CURL POST, как показано ниже:

starttime=$1
endtime=$2

for apps in $(cat testapps.txt)
do
    curl -X POST -H "Content-type: application/vnd.appd.cntrl+json;v=1" -d '{"name": "This is a test","timeRange": {"startTimeMillis":"$1","endTimeMillis":"$2"}, "affects": {"type": "APP"}}'

Это дает мне 500 внутренняя ошибка сервера.

Если я заменю значение в $ 1 и $ 2 на дату / время, как показано ниже, это будет нормально.

curl -X POST -H "Content-type: application/vnd.appd.cntrl+json;v=1" -d '{"name": "This is a test","timeRange": {"startTimeMillis":"2019-05-28T15:00:00-0400","endTimeMillis":"2019-05-28T16:00:00-0400"}, "affects": {"type": "APP"}}'

Я что-то упустил?

1 Ответ

1 голос
/ 28 мая 2019

Во-первых, Не читать строки с .

while read apps
do args=( 
    -X POST
    -H "Content-type: application/vnd.appd.cntrl+json;v=1"
    -d '{ "name":"This is a test",
          "timeRange": { 
              "startTimeMillis": "'"$1"'",
              "endTimeMillis": "'"$2"'" }, 
          "affects": {"type": "APP"}}'
   ) 
   # don't you need a URL here?
   curl "${args[@]}" "$apps" # added $apps, assuming that was missing...
done < testapps.txt
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...