2011-01-22 14 views
6

Nel mio script principale, chiamerò prima una funzione init per avviare molte variabili che mi aspettavo fossero usate nello script. Un modo è usare variabili il cui nome è come $script:var1 che sono variabili a livello di script. Ma è un po 'brutto e mi piacerebbe usare il nome della variabile normale, quindi ho bisogno di un meccanismo per creare una funzione come sorgente di un file.PowerShell: come creare una funzione come sorgente di un file?

Quando si genera un file, tutte le variabili in quel file sono disponibili nello script chiamante.

risposta

4

utilizzare la stessa sintassi che utilizza dot-operatore, proprio come per i file di sourcing:

. My-Function 
1

Si può anche farlo in uno scriptblock e dot-source che, ma le regole sono leggermente diverse. È necessario disporre di uno spazio dopo il punto per dot-source di una funzione e non con un scriptblock.

Entrambi questi produrranno 42

$a=0 
function init {$a=42} 
. init 
$a 

$a=0 
$init={$a=42} 
.$init 
$a 
Problemi correlati