2010-11-22 16 views
8

Ho visto queste variabili nel debugger e non sono sicuro di quello che fanno.

risposta

13
  • $_ L'oggetto pipeline corrente; utilizzato in blocchi di script, filtri, la clausola processo di funzioni, dove-oggetti, foreach-object ed interruttore
  • $^ contiene il primo token dell'ultima ingresso di linea nel guscio
  • $$ contiene l'ultimo token dell'ultima ingresso di linea nella shell
  • $? Contiene il successo/fallimento stato dell'ultima dichiarazione

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

+0

Immagino che la descrizione di '$ _' possa essere abbreviata in" utilizzata nei blocchi di script ". Tutti gli altri casi elencati sono anche blocchi di script. – Joey

+1

Ottengo $ _ e $? ora, ma perché dovrei mai usare $^o $$? – Micah

4

In PowerShell, un segno del dollaro che precede un nome indica una variabile. I simboli in questione sono solo casi speciali di variabili fornite dall'ambiente PowerShell. Sono anche conosciute come variabili "automatiche". Più precisamente:

  • $$ è una variabile contenente l'ultimo token dell'ultima ingresso di linea nel guscio
    (non contiene l'intero comando)

  • $^ è una variabile contenente il primo token ultimo ingresso linea nel guscio
    (non contiene l'intero comando)

  • $? è una variabile contenente il successo o il fallimento dell'ultima dichiarazione
    (012.se il comando precedente terminava con un errore; True altrimenti.)

+1

"Vero se il comando precedente è terminato con un errore; Falso altrimenti" Davvero? –

+0

@ AndrewJ.Brehm: ho modificato il post per correggere questa affermazione. – goric

8

Leggi

Get-Help About_Automatic_Variables 

Tutti i suoi circa la bontà di variabili automatiche che vengono creati quando si utilizza console PowerShell.

+2

Questi non sono specifici per l'host della console. – Joey

Problemi correlati