You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何以分号分隔显示用户的普通与特权账户?

账户核查结果分号分隔显示的PowerShell实现方案

针对定期用户账户核查场景——通过特权账户的comment属性关联普通账户登录ID,需将普通账户与关联特权账户以分号分隔显示在同一行的需求,可对原有代码进行如下优化:

修改后的PowerShell代码

# 获取用户输入的普通账户登录ID
$LoginID = (Read-Host "请输入用户的登录ID").Trim()

# 查询与普通账户关联的特权账户
$privAccounts = Get-ADUser -LDAPFilter "(comment=$LoginID)" `
    -SearchBase "OU=Privileged,OU=Accounts,DC=contoso,DC=com" `
    -Properties samaccountname

# 生成并输出分号分隔的账户列表
if ($privAccounts) {
    # 合并普通账户和所有特权账户到数组
    $allAccounts = @($LoginID) + $privAccounts.SamAccountName
    Write-Host "该用户拥有普通账户和特权账户:$($allAccounts -join ';')"
} else {
    Write-Host "该用户仅拥有普通账户:$LoginID"
}

关键优化说明

  • 移除无效循环:原代码中foreach($user in $LoginID)无意义($LoginID为单个字符串),直接执行查询即可
  • 修正变量赋值逻辑:原代码用Write-Host赋值给$Accounts的方式无效,Write-Host仅用于控制台输出,不会将内容返回给变量,因此直接在分支逻辑中输出结果
  • 统一账户列表拼接:将普通账户ID和特权账户的SamAccountName合并到数组,通过-join ';'轻松实现分号分隔的单行显示
  • 代码可读性优化:用反引号(`)实现代码换行,避免单行过长影响阅读

内容的提问来源于stack exchange,提问作者ak2595

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.10 20:20:29