Как запустить веб-скрипт URL в терминале

Я пытаюсь запустить сценарий через свой терминал. Это хорошо работает в моем браузере, но не в терминале.

Я попробовал...

sudo curl https://www.example.com/myscript?info=1

sudo wget -q -O- https://www.example.com/myscript?info=1

sudo wget https://www.example.com/myscript?info=1

Вот вывод, который я получаю...

[2] 25034
[1]   Done 

Но я знаю не работа, потому что часть кода посылает электронное письмо, это электронное письмо послано, когда я выполняю URL от браузера, но не удается сделать так, когда работал от терминала.

1
задан 26 July 2015 в 20:10

1 ответ

Кажется, что Вы имеете & где-нибудь в Вашем URL, следовательно оболочка отправляет процесс в фон.

Для решения этого заключите URL в кавычки.

, Например, если Вы используете:

curl https://www.example.com/myscript/foo&bar

оболочка будет рассматривать URL как https://www.example.com/myscript/foo и & после того, как это заставит эти curl https://www.example.com/myscript/foo процесс идти фон. Обратите внимание, что bar после & отсутствует также.

, Таким образом, необходимо заключить URL в кавычки:

curl 'https://www.example.com/myscript/foo&bar'
curl "https://www.example.com/myscript/foo&bar"

Также примечание, которое ? имеет особое значение для окружения (означает любой отдельный символ), поэтому когда у Вас есть метасимволы оболочки где угодно в Вашем аргументе, необходимо заключить аргумент в кавычки (если намеренный).

9
ответ дан 3 December 2019 в 06:21

Другие вопросы по тегам:

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