PowerShell: Env: избегайте усечения переменных среды

PowerShell отображает переменные среды по одной строке для каждой. Если переменная имеет достаточно длинное значение, она усекается и добавляется многоточие:

> gci env:

Name                           Value
----                           -----
<suppressed lines>
PSModulePath                   C:Windowssystem32WindowsPowerSh...
<suppressed lines>

есть ли способ получить полные значения для всех vars сразу, как в стандартной командной строке?
(ответы даны для в PowerShell получить-childitem ОКР:Path возвращает ellipsed одну линию, как что-то полезное? не будет применяться, затем).

3
задан Community
28.11.2022 15:58 Количество просмотров материала 3071
Распечатать страницу

2 ответа

форматирование по умолчанию усекает, укажите-Wrap и увидеть полный вывод.

gci env: | Format-Table -Wrap -AutoSize

результат

PSModulePath            C:\Users\KNUCKLE-DRAGGER\Documents\WindowsPowerShell\Modules;C:\Windows\system32\WindowsPowerShell\v1.0\Modules\

или, если вы предпочитаете вывод точно имитировать cmd.exe, попробуйте

cmd /c start /b set

результат

PSModulePath=C:\Users\KNUCKLE-DRAGGER\Documents\WindowsPowerShell\Modules;C:\Windows\system32\WindowsPowerShell\v1.0\Modules\
11
отвечен Knuckle-Dragger 2022-11-29 23:46

если вы хотите подражать set вывод из powershell без вызова cmd попробуй:

dir env: | %{"{0}={1}" -f $_.Name,$_.Value}

много печатать, поэтому оберните его в функцию:

function set {dir env: | %{"{0}={1}" -f $_.Name,$_.Value}}
4
отвечен zdan 2022-11-30 02:03

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх