Используя этот результат, команды делятся на две строке, первым обрежется на 59 символов, второй - все остальных символыPowershell слово обертывания в 59 символах
$command ='nuget.exe list "Json.NET" -source "https://www.nuget.org/api/v2/"'
(Invoke-Expression "$command") | out-file C:\test.txt
Похоже, какое-то странное слово обертывания и появляется только в Windows PowerShell ISE (Powershell.exe работает отлично)
Увеличение размера буфера не работает для меня
$host.UI.RawUI.BufferSize = new-object System.Management.Automation.Host.Size(512,50)
это работает
start-process $nugetExe $command -wait -WindowStyle Hidden -RedirectStandardOutput C:\test.txt -RedirectStandardError C:\error.txt
, но это работает только, если исключить «RedirectStandardError», если она существует - упаковка еще на месте Тот же вопрос, если я использую
$process.StartInfo.RedirectStandardError = $true;
Что входит в переменную '$ command'? Является ли первая строка всегда урезанной до 59 символов (например, установите '$ command = '" 0 "* 200'')? – Rynant
он получает команду списка пакетов nuget, например: .nuget.exe list "Json.NET" -source "https://nuget.org/api/v2/", и нет, 59 символов, только если имя пакета слишком длинное – Sergey
Это похоже, что nuget отвечает за упаковку, и она обтекает ширину окна. Вам нужно будет установить $ Host.UI.RawUI.WindowSize'. Я не использую nuget, поэтому я не уверен, есть ли другой вариант. – Rynant