【问题标题】:How do I add a variable as a column value in a result set?如何将变量添加为结果集中的列值?
【发布时间】:2020-05-30 16:48:43
【问题描述】:

我有一个循环遍历 CSV 文件中的值的变量。由于循环为我在 CSV 中的每个值返回结果集,我还希望在结果集中返回该值(变量)。我试图在我的Select 语句中添加我的变量$user,但它只显示在列标题中,我的值为空白或{}

这是循环代码:

$users = Get-Content C:\AD\ad_groups.txt

ForEach ($User in $users) 
{
    Get-ADGroupMember -Identity $user  -Server MyServerName| Select name,SamAccountName,$user 
}

【问题讨论】:

    标签: powershell variables active-directory select-object group-membership


    【解决方案1】:

    您可能需要使用所谓的计算属性。代替 $User,尝试使用以下哈希表作为属性值。如果您认为有必要/首选,“名称”可以缩短为“N”,“表达式”可以缩短为“E”(此处没有双引号)。

    @{Name='User';Expression={$User}}
    

    【讨论】:

      【解决方案2】:

      您可以使用这样的计算属性:

      $userList = Get-Content C:\AD\ad_groups.txt
      ForEach ($User in $userList) { 
          Get-ADGroupMember -Identity $user -Server MyServerName | 
              Select-Object name, SamAccountName, @{Name='user';Expression={$User}} 
      }
      

      【讨论】:

      • 是的,这正是我所需要的。谢谢!
      【解决方案3】:

      您的代码可能只需要几个字符就可以工作了。

      你没有说$User的格式是什么,但是因为它是-Identity参数可以接受的,这意味着,根据the documentation,它必须是以下之一(链接到output object属性我的,与选择该值的代码交错)...

      Distinguished Name

      示例: CN=saradavisreports,OU=europe,CN=users,DC=corp,DC=contoso,DC=com

      Get-ADGroupMember -Identity $user  -Server MyServerName| Select name,SamAccountName,DistinguishedName
      

      GUID (objectGUID)

      示例:599c3d2e-f72d-4d20-8a88-030d99495f20

      Get-ADGroupMember -Identity $user  -Server MyServerName| Select name,SamAccountName,objectGUID
      

      Security Identifier (objectSid)

      示例:S-1-5-21-3165297888-301567370-576410423-1103

      Get-ADGroupMember -Identity $user  -Server MyServerName| Select name,SamAccountName,objectSid
      

      Security Accounts Manager (SAM) Account Name (sAMAccountName)

      示例:saradavisreports

      sAMAccountName 原代码中已选择属性)

      如果$users 包含多种格式的标识符,或者您想保留传递给Get-ADGroupMember 的确切文本,那么您将需要使用其他答案之一来选择它作为使用ScriptBlock 的属性。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2013-10-30
        • 1970-01-01
        • 1970-01-01
        • 2016-11-21
        • 2018-11-13
        • 2015-09-23
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多