0
votes

Sortie variable Powershell

[Utilisation d'ISE]

J'ai: '$ ($ udvTest | Select ProcessName -Last 1)' $ udvTest contient 5 processus en tant que membres provenant de Get-Process.

J'obtiens les 3 lignes suivantes:

ProcessName
-----------
svchost

Mais je ne veux que la chaîne "svchost" comme sortie (par exemple pour un traitement ultérieur). Qu'est-ce que je néglige pour que cette petite faveur demandée à PS semble si cachée?


0 commentaires

4 Réponses :


1
votes
$(($udvTest | Select -Last 1).ProcessName)

0 commentaires

0
votes

La voie pure PowerShell serait ceci: xxx

ou pour votre exemple particulier: xxx


0 commentaires

0
votes

"PS semble tellement caché"

En fait, le fait que vous voyez une table d'informations est un indice sur l'une des meilleures choses à propos de PowerShell: les objets. Celles-ci vous rendent la vie tellement plus facile que la manipulation directe de texte.

Quoi qu'il en soit, une façon d'obtenir les informations que vous voulez est:

$udvTest[-1].ProcessName

Depuis $ udvTest est un tableau, vous pouvez l'indexer pour trouver l'élément que nous voulons. Si vous fournissez un index négatif, PowerShell comptera le de la fin au début, donc [-1] signifie prendre le dernier élément.

Le .ProcessName est un autre indicateur que vous traitez avec des objets et obtiendra la valeur de la propriété ProcessName pour vous.


0 commentaires

0
votes

Merci beaucoup! Je vois maintenant que je dois donner la propriété 'ProcessName' pour en récupérer la valeur pure. Meilleur!


0 commentaires