【问题标题】:Variable in powershell AD commands issuepowershell AD 命令中的变量问题
【发布时间】:2015-09-02 21:01:55
【问题描述】:

我已经搜索了(包括)这个论坛,并看到了有关此问题的 cmets,但无法使其正常工作。

我在 PS 中有一个变量$user.accountname = Aaron.street"

但如下所示,如果我输入完整的名称,它可以工作但不使用变量。我已经通过搜索这个论坛尝试了如此多的建议,但似乎没有任何效果。

    PS D:\Lync PS scripts> Get-adUser -Filter "name -like 'Aaron Street'"


DistinguishedName : CN=aaron street,OU=Full_time,OU=Staff,OU=Accounts,OU=.........
Enabled           : True
GivenName         : aaron
Name              : aaron street
ObjectClass       : user
ObjectGUID        : 037c744b-63fa-4a18-adb3-........
SamAccountName    : street
SID               : S-1-5-21-33161136-...........
Surname           : street
UserPrincipalName : street@...........




PS D:\Lync PS scripts> Get-adUser -Filter "name -like '$user.Accountname'"

PS D:\Lync PS scripts> Write-Host $user.AccountName
Aaron Street

我想要的是找到用户,然后使用另一个变量“$user.number”更新属性所以我的完整命令是

get-aduser -filter "name -like '$user.accountname'" | set-aduser -Replace @{Officephone = $user.Number}

关于我在使用变量时出错的地方有什么想法吗?

【问题讨论】:

    标签: windows powershell active-directory


    【解决方案1】:

    您需要使用subexpression 来正确展开变量

    Get-adUser -Filter "name -like '$($user.Accountname)'"
    

    【讨论】:

    • 完美,我稍后会查看(PS 不是我的技能,你可以说)它在做什么。但同时非常感谢您的帮助。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-05-06
    • 2020-11-06
    • 1970-01-01
    • 2021-10-23
    • 2012-09-05
    • 1970-01-01
    相关资源
    最近更新 更多