首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Powershell - Get-WmiObject过滤器

Powershell - Get-WmiObject过滤器
EN

Stack Overflow用户
提问于 2020-10-21 14:02:51
回答 2查看 1.1K关注 0票数 0

我需要在远程机器上获得本地管理员,但只需要显示域用户(具有域\前缀的用户)

代码语言:javascript
复制
   $admins = Gwmi win32_groupuser –computer computer   
    $admins = $admins |? {$_.groupcomponent –like '*"Administrators"'} 
    $admins |% {  
    $_.partcomponent –match “.+Domain\=(.+)\,Name\=(.+)$” > $nul  
    $matches[1].trim('"') + “\” + $matches[2].trim('"') 
    } 

$admins = $admins |? {$_.groupcomponent –like '*"Administrators"'}

GroupComponent   : \\COMPUTER\root\cimv2:Win32_Group.Domain="COMPUTER",Name="Administrators"
PartComponent    : \\COMPUTER\root\cimv2:Win32_Group.Domain="DOMAIN",Name="Domain Admins"
PSComputerName   : COMPUTER

电流输出:

计算机管理员

域域管理员

域\User1 1

域\user2 2

我只需要向域用户显示

期望输出:

域域管理员

域\User1 1

域\user2 2

我试过这个:

代码语言:javascript
复制
$admins |% {  
$_.partcomponent –match “.+Domain\='DOMAIN\',Name\=(.+)$” > $nul  
$matches[1].trim('"') + “\” + $matches[2].trim('"') 
} 

但是单个用户会被多次显示。

域\User1 1

域\User1 1

域\user1 1

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-10-22 06:56:12

弄明白了

代码语言:javascript
复制
$admins |% {  
$_.partcomponent –match ".+Domain\=(.+)\,Name\=(.+)$" > $nul 
$matches[1].trim('"') + "\" + $matches[2].trim('"') | Where-Object {$_ -like 'DOMAIN*' }
}

输出:

代码语言:javascript
复制
DOMAIN\Domain Admins
DOMAIN\user1
DOMAIN\User2
票数 1
EN

Stack Overflow用户

发布于 2020-10-21 16:14:51

请不要使用来自TechNet画廊的意大利面代码。

好剧本是一篇写得很好的(英文)散文。

代码语言:javascript
复制
Get-WmiObject Win32_GroupUser –Computer PlaceYourComputerNameHere | <# Now, you have all users #>
Where-Object {$_.GroupComponent –like '*"Administrators"'} | <# Now, you have all Administrators #>
Where-Object { $_.PartComponent  –match ".+Domain\=""(.+)"",Name\=(.+)$"} | <# Now, you have all domain administrators and you have created two regex groups by (.+) with index 1 and 2 #>
ForEach-Object {"$($Matches[1])\$($Matches[2])"} <# Now, you concatenated the results from regex matches into a single string #>
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64465298

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档