Как использовать несколько аргументов GET в cURL в CMD? - PullRequest
0 голосов
/ 20 июня 2020

Мне нужно использовать cURL в Windows командной строке, мой URL-адрес имеет несколько аргументов GET, а символ &, разделяющий аргументы, мешает. Например, если бы я сделал curl https://example.com/?get=1&get2=1 > file.txt, тогда CMD сказал бы что-то вроде «'get2' не распознается как внутренняя или внешняя команда, работающая программа или командный файл.» Я поискал в Интернете потенциальную работу- вокруг, но мне не повезло. Я пробовал использовать кодировку URL для символа &, но это не сработало. Я попытался передать аргумент -d в cURL для обозначения параметра GET, но, как я уже сказал, не повезло. Если у кого-то есть отрицательные предложения, мы будем рады их приветствовать! Я также открыт для использования другой программы, кроме cURL, если ее можно использовать через CMD и можно выводить содержимое веб-страницы в файл.

Большое спасибо за все будущие ответы!

1 Ответ

0 голосов
/ 20 июня 2020

Поскольку ваш URL-адрес содержит символы, которые вызывают проблемы от c до cmd.exe, я бы посоветовал вам защитить их, используя двойные кавычки вокруг строки URL-адреса:

curl "https://example.com/?get=1&get2=1" > file.txt

Более правильно, если вы используете Windows 10 встроенная версия cURL:

"%__APPDIR__%curl.exe" --url "https://example.com/?get=1&get2=1" 1> "file.txt"

Или, если вы используете другую версию cURL:

"P:\ath\To\curl.exe" "https://example.com/?get=1&get2=1" 1> "file.txt"

Части P:\ath\To и .exe команды можно удалить, если вы уверены, что исполняемый файл cURL находится в текущем каталоге или внутри %PATH% и что переменная %PATHEXT% не была изменена, чтобы удалить расширение .EXE.

...