Используйте переменную в качестве параметра в Set-MsolUser - PullRequest
1 голос
/ 08 ноября 2019

Почему я не могу использовать переменную в качестве параметра в PowerShell?

Set-MsolUser -UserPrincipalName john.doe@contoso.com -$parameter Stockholm

$ параметр равен City в этом случае

Set-MsolUser : A positional parameter cannot be found that accepts argument '-City'.
At line:1 char:1
+ Set-MsolUser -UserPrincipalName john.doe@contoso.com
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidArgument: (:) [Set-MsolUser], ParameterBindingException
    + FullyQualifiedErrorId : PositionalParameterNotFound,Microsoft.Online.Administration.Automation.SetUser

1 Ответ

1 голос
/ 08 ноября 2019

Вы можете использовать следующие опции:

1) Вызвать команду с аргументами

Invoke-Command -ScriptBlock {Get-ChildItem} -ArgumentList "-$($para) C:\Temp"

2) Использовать сплаттинг

$Val = 'Path'
$HashArguments  = @{
    $Val = 'C:\Temp'
}

Get-ChildItem @HashArguments
...