【发布时间】:2019-11-04 06:25:33
【问题描述】:
Powershell 问题。
我正在尝试更改位于不同域的多个远程服务器上的本地用户密码。 csv 文件包含 4 列:servername、domain、password、localuser
例子:
- Server1、mydomain.dev、test123、localadmin
- Server2、mydomain.uat、test123、localadmin
- Server3,mydomain.prod test123,localadmin
这是我目前所拥有的,但遗憾的是没有成功:
Import-CSV servers.csv | ForEach-Object {Invoke-Command -ComputerName "$($_.servername).$($_.domain)" `
-Credential "$($_.domain)\$($env:username)" {([adsi]"WinNT://./$_.localuser").SetPassword($_.password)}
}
作为 Powershell 的新手,我不知道如何在 {} 中正确传递 locauser 和密码属性。
非常感谢任何帮助!
【问题讨论】:
-
谢谢@GuentherSchmitz。我尝试添加: {param(l_user,$l_pass)([adsi]"WinNT://./$l_user").SetPassword($l_pass)} -ArgumentList $_.localuser,$_.password.它似乎不起作用,但我走在正确的道路上吗?
-
请忽略我之前的评论。我断线不正确,那是杯子
标签: powershell