Прочитать ответ команды curl в сценарии оболочки - PullRequest
0 голосов
/ 08 января 2020

Я пишу сценарий оболочки, в котором мне нужно работать над ответом API. Я вызвал api с помощью команды curl и попытался получить его ответ в оболочке, чтобы я мог l oop over response и распечатать его. Но я не могу получить ответ. Вот скрипт:

#!/bin/bash
result=$(curl "https://example.com/test")
echo "test"
RESP=`echo $result | grep -oP "^[^a-zA-Z0-9]"`

echo "$RESP"

Я получаю пустой ответ после теста. Может ли кто-нибудь помочь мне в этом?

1 Ответ

0 голосов
/ 13 января 2020

Попробуйте этот синтаксис:

#!/bin/bash
result="$(curl -s 'https://example.com/test')"
echo "result: '$result'"
RESP=$(echo "$result" | grep -oP "^[^a-zA-Z0-9]")
echo "RESP:'$RESP'"

Объяснение:

  • Мы сохраняем в $ result результат свернутой страницы (-s удаляет статус загрузки и вещи, которые не принадлежит странице)
  • Мы отображаем содержимое $ result между кавычками, чтобы проверить, что мы получили.
  • Мы храним содержимое этой команды grep (что вы ищете, кстати) ? пожалуйста, оставьте комментарий, если вам нужна помощь Regex)
  • Мы отображаем содержимое $ RESP между кавычками, чтобы проверить, что мы получили.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...