Чтобы ответить на вопрос, который вы задали. wget
принимает URL-адрес, но ping
принимает имя хоста. Ваш URL-адрес состоит из протокол ( https
), имя хоста ( gfe.cit.api.here.com
), путь ( /1/layer_put.json
) и три закодированные параметры ( layer_id = 123 & app_id = x2 & app_code = x1
). В URL могут отображаться и другие элементы, например аутентификация и порт.
Для приемлем только компонент имени хоста. ] команду ping
.
Затем команда wget
открывает TCP / IP-соединение с портом, ожидаемым протоколом ( 443 / tcp
в случае https
) и использует протокол HTTP для получения содержимого с указанного URL.
Команда ping
использует ICMP для отправки запроса ping на указанный хост, который затем возвращает ответ эхо-ответ . Это пакеты ICMP типов 8 и 0 соответственно.
Основная причина ошибки wget
заключается в том, что вы не указали параметр для wget
, поэтому оболочка анализирует его. Символ и
в середине URL-адреса указывает оболочке запускать все до этого момента в фоновом режиме. Затем он немедленно запускает оставшиеся две части строки и сразу же выводит ошибки.
Используйте одинарные кавычки в своем URL-адресе, и, вероятно, все будет работать так, как вы планировали.
Итак, мы имеем
wget -O layer_put.json 'https://gfe.cit.api.here.com/1/layer_put.json?layer_id=123&app_id=x2&app_code=x1'
ping -c3 gfe.cit.api.here.com