无法使用脚本设置密码

时间:2018-07-22 15:44:31

标签: powershell

经过一番研究,我找到并修改了脚本以满足自己的需求

Import-Module ActiveDirectory
Import-csv c:\users\administrator\desktop\output.csv |

New-ADUser -path "ou=xxx,dc=xxx,dc=xxxxx,dc=xxx" -passthru |
ForEach-Object {
    $_ | Set-ADAccountPassword -Reset -NewPassword (ConvertTo-SecureString -AsPlainText "Pa$$w0rd123" -Force) -PassThru
    $_ | Enable-ADAccount 
    }

我可以在OU中使用此脚本创建用户,但是密码似乎不起作用。我必须手动重置它,然后一一设置。

我做错了什么? BTW,Server 2016

2 个答案:

答案 0 :(得分:1)

$在powershell中标记一个变量。 Ypu需要转义字符以将Dollarsigns放入字符串中,例如RIGHT。在角色前面放一个“ grave”(`)以使其逃脱。您也可以将字符串用单引号引起来,这将告诉powershell不要扩展变量。

答案 1 :(得分:0)

当您有一个字符串变量并且它包含一个$时,其行为将取决于您用来投射字符串的方法。

使用双引号“”将告诉Powershell,是的,这是文本,但是如果我在此处放置变量,则应该在文本字符串中输出该变量。

如果您希望拥有一个字符串并使用$并且Powershell不对其进行响应,请使用单引号''。

这将使Powershell将$当作字符串中的一个字符,而不是它尝试查找并放入字符串中的变量。