#powershell #curl #command #command-prompt
Вопрос:
Я пытаюсь написать скрипт powershell для загрузки файла на этот сайт. Изначально они предложили использовать командную строку, и предоставленная ими команда выполняется, но мне нужно вручную войти и изменить каталог, прежде чем я не знаю, как это сделать в сценарии с командной строкой. Я попытался сделать это в Powershell , чтобы я мог установить каталог в начале и автоматизировать, пожалуйста, просмотрите.
сценарий командной строки (запускается):
-curl ‐i ‐F filedata=@"C:PBISPBISstudent.csv" -u"DoughertyCountyDL":"20PBi$"
(это выполняется, но мне нужно зайти вручную и изменить каталог, а затем отправить его)
сценарий powershell (не запускается):
Set-Location -Path "E:bin"
-curl ‐i ‐F filedata=@"C:PBISPBISstudent.csv" -u"DoughertyCountyDL":"20PBi$"
"https://datalink.pbisapps.org/api/2/Students/File"
(Ошибка, которую я получаю, заключается в том, что он не распознает curl как командлет, но у меня указан путь, по которому curl.exe находится так, что я не понимаю.. )
Комментарии:
1. позвоните
.curl.exe
(с добавочным номером) вместоcurl
2. Когда я его использую, он запустился, но выдал мне сообщение об ошибке, в котором говорилось, что учетные данные были неверными, но на самом деле они верны и запускаются в командной строке..
3. <!DOCTYPE html PUBLIC «-//W3C//DTD XHTML 1.0 Strict//EN» » w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd «> <html xmlns=» w3.org/1999/xhtml «> <head> <meta http-equiv=»Content-Type» content=»text/html; charset=utf-8″ /> <title>401 — несанкционированный: доступ запрещен из-за неправильные учетные данные. </название>
4. Пожалуйста, добавьте сообщение об ошибке в текст вашего вопроса, чтобы оно было более заметным.
Ответ №1:
Собственный командлет Powershell таков Invoke-WebRequest
. Вот ссылка на документацию для отправки файла: https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.utility/invoke-webrequest?view=powershell-7.1#example-5—submit-a-multipart-form-data-file
Этот командлет также содержит параметр учетных данных, который также должен устранить вашу «Несанкционированную» ошибку.
Комментарии:
1. Итак, можете ли вы помочь мне преобразовать предоставленный код, который я попытался выполнить с помощью invoke-webrequest? Для меня это не имеет смысла, я полный новичок в powershell. Я пытаюсь понять, могу ли я изменить каталог в пакете командной строки прямо сейчас