2010-11-22 13 views
8

J'ai vu ces variables dans le débogueur et je ne suis pas sûr de ce qu'elles font.

Répondre

13
  • $_ L'objet pipeline actuel; utilisé dans des blocs de script, des filtres, la clause de traitement de fonctions, où-objet, foreach-objet et le commutateur
  • $^ contient le premier jeton de la dernière entrée de la ligne dans la coque
  • $$ contient le dernier jeton de la dernière entrée de la ligne dans la coquille
  • $? Contient le succès/échec état de la dernière déclaration

Source: http://www.computerperformance.co.uk/powershell/powershell_variables.htm#%24Dollar_variables_

+0

Je suppose que la description de '$ _' pourrait être raccourcie à" utilisé dans les blocs de script ". Tous les autres cas répertoriés sont également des blocs de script. – Joey

+1

Je reçois $ _ et $? maintenant, mais pourquoi utiliserais-je $^ou $$? – Micah

4

Dans PowerShell, un signe dollar précédant un nom indique une variable. Les symboles en question ne sont que des cas particuliers de variables fournis par l'environnement PowerShell. Ils sont également appelés variables "automatiques". Plus précisément:

  • $$ est une variable contenant le dernier jeton de la dernière entrée de la ligne dans la coquille
    (ne contient pas la commande entière)

  • $^ est une variable contenant le premier signe de la dernière entrée de la ligne dans la coquille
    (ne contient pas toute la commande)

  • $? est une variable contenant le succès ou l'échec de la dernière déclaration
    (False si la commande précédente s'est terminée avec une erreur; True autrement.)

+1

"Vrai si la commande précédente s'est terminée avec une erreur, Faux dans le cas contraire" Vraiment? –

+0

@ AndrewJ.Brehm: J'ai édité le post pour corriger cette déclaration. – goric

8

Lire

Get-Help About_Automatic_Variables 

Son tout au sujet de la bonté des variables automatiques qui sont créées lors de l'utilisation de la console PowerShell.

+2

Ceux-ci ne sont pas spécifiques à l'hôte de la console. – Joey

Questions connexes