【发布时间】:2021-05-04 22:52:53
【问题描述】:
我想修改本地用户的描述属性。 我可以通过两种方式检索所有本地用户的名称和描述。
一个使用WMI Win32_UserAccount 类:
Get-CimInstance -ClassName Win32_UserAccount -Filter "LocalAccount='True'" | Select-Object -Property name, description | FL
还有一个使用ADSI:
$Computername = $env:COMPUTERNAME
$adsi = [ADSI]"WinNT://$Computername"
$Users = $adsi.Children | Where-Object {$_.SchemaClassName -eq 'user'}
ForEach ($u in $Users) {
$u | Select-Object -Property Name, Description
}
但是,我不知道如何使用类似于上述命令的命令来修改本地用户属性描述。我做了研究,只知道如何做 GETS 而不是 SETS。 我的最终目标是将这段代码放入 Ansible playbook 并在多个远程服务器上运行。如果您知道如何解决这个问题或如何帮助我,我将不胜感激。
【问题讨论】:
-
升级到 PowerShell 5.1 版并使用Set-LocalUser ;-)
-
您要更改什么属性?
-
@AbrahamZinala
Description;-) -
可能有助于阅读哈哈谢谢@olaf
-
如果您切换回使用
Get-WmiObject,则.Description属性会同时列出{get;set;}的定义。 [咧嘴]
标签: powershell user-interface winapi ansible adsi