2009-09-23 7 views
5

Tipicamente, in PowerShell si utilizzano

env:VARIABLE = "Some kind of value" 

Ma il mio problema è che ho il nome della variabile in un oggetto stringa. Powershell non lo riconosce come oggetto stringa e utilizza il nome della variabile come nome della variabile di ambiente. Ad esempio, se faccio questo:

$someVariable = "MY_ENV_VAR" 
env:$someVariable = "Some kind of value" 

Il risultato è di $ someVariable essere letteralmente definita come una variabile d'ambiente, invece di MY_ENV_VAR. Ho provato numerose iterazioni sull'uso di $ {} come se ci fossero dei periodi nella stringa, ma nulla di ciò che ho trovato funziona. Come posso usare EnV di Powershell: usando un oggetto stringa?

risposta

7

Il "Env" drive è un fornitore in modo da poter utilizzare i cmdlet * -Item su di esso per esempio:

ENV New-Item: \ $ someVariable -Value "una sorta di valore"

+0

Grazie mille! – nathan

0

Set-Variable -Name $ someVariable -Value "Un qualche tipo di valore"

+1

Funziona con le variabili di PowerShell ma non penso che funzioni per le variabili di ambiente. –

+0

In effetti, non è così. – Joey

+0

Sì, ho letto male la domanda :( –