我在做一個用GUI改變用戶帳戶AD的腳本。 在列表中選擇一個用戶時,我想顯示他是其成員的所有組。 對於順序是確定的,但在PSSession中的命令不工作,-Filter
參數不識別變量命令Get-ADUser -Filter在PSSession中不起作用
$SessionAD = New-PSSession -ComputerName $AD
Invoke-Command $SessionAD -Command {Import-Module ActiveDirectory}
Import-PSSession $SessionAD -Module ActiveDirectory
...
$var = $ListeUsers.SelectedItem
$GroupsMember = Get-ADUser -Filter {Name -like $var} -Property MemberOf |
Select -ExpandProperty MemberOf |
Get-ADGroup -Property MemberOf |
Select Name
Error : La variable : « var » trouvée dans l’expression : $var n’est pas définie. + CategoryInfo : InvalidArgument : (:) [Get-ADUser], ArgumentException + FullyQualifiedErrorId : La variable : « var » trouvée dans l’expression : $var n’est pas définie.,Microsoft.ActiveDirectory.Management.Commands.GetADUser + PSComputerName : AD-01
隨着代碼下面的命令運行正常,但我不能檢索變量的值$GroupsMember
:
Invoke-Command -Session $SessionAD -ArgumentList $var,$GroupsMember -ScriptBlock {
Param($var, $GroupsMember)
$GroupsMember = Get-ADUser -Filter {Name -like $var} -Property MemberOf |
Select -ExpandProperty MemberOf |
Get-ADGroup -Property MemberOf |
Select Name
}
喜建一個String,也許$ var不是在Import-PSSession之後加載的會話中創建的。你可以在$ var = $ ListeUsers.SelectedItem之後輸入get-variable嗎? –
變量處於相同的pssession狀態。 Get-Variable有這個錯誤: Get-Variable:Impossible de trouver une variablenommée«test05»。 AucaractèreLigne:1:8 + $ var | Get-Variable + ~~~~~~~~~~~~ + CategoryInfo:ObjectNotFound:(test05:String)[Get-Variable],ItemNotFoundException + FullyQualifiedErrorId:VariableNotFound,Microsoft.PowerShell.Commands.GetVariableCommand – Guillaume