20 votes

PowerShell : Env : Éviter la troncature des variables d'environnement

PowerShell affiche les variables d'environnement, une ligne pour chacune. Si une variable a une valeur assez longue, elle est tronquée, et une ellipse est ajoutée :

> gci env:

Name                           Value
----                           -----
<suppressed lines>
PSModulePath                   C:\Windows\system32\WindowsPowerSh...
<suppressed lines>

Existe-t-il un moyen d'obtenir les valeurs complètes de toutes les variables à la fois, comme dans une invite cmd standard ? (les réponses données pour Powershell get-childitem env:path retourne une ligne ellipsée, comment avoir quelque chose d'utile ? ne s'appliquerait pas, alors).

30voto

Knuckle-Dragger Points 1973

Le formatage par défaut tronque, spécifiez -Wrap et voyez la sortie complète.

gci env: | Format-Table -Wrap -AutoSize

Résultat

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

ou si vous préférez que la sortie simule exactement cmd.exe, essayez

cmd /c start /b set

Résultat

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

4voto

alex77 Points 298

Si vous voulez imiter set sortie de powershell sans invoquer cmd essayez :

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

il faut beaucoup taper, alors intégrez-le dans une fonction :

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

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X