从powershell更新/修改AD属性时出现问题

从powershell更新/修改AD属性时出现问题,powershell,Powershell,我正在做一个powershell脚本,它可以根据sAMAccoutname更新AD中的Account Expires字段,但是当它试图更新AD中的Account Expires字段时,我在Set ADUserpowershell命令上遇到了一些问题。我用各种命令选项组合测试了几种方法,但没有一种方法能按预期工作 第一次尝试 Set-ADUser -Identity xxxx00242 -accountExpires 130618739743580353 Set-ADUser -ident

我正在做一个powershell脚本,它可以根据
sAMAccoutname
更新AD中的Account Expires字段,但是当它试图更新AD中的Account Expires字段时,我在
Set ADUser
powershell命令上遇到了一些问题。我用各种命令选项组合测试了几种方法,但没有一种方法能按预期工作

第一次尝试

 Set-ADUser -Identity xxxx00242 -accountExpires 130618739743580353 
 Set-ADUser -identity xxxx0242 -Add @{AccountExpirationDate=" 130612691742815904"}
收到错误

 Set-ADUser : A parameter cannot be found that matches parameter name 'accountExpires'.
    At line:1 char:31
    + Set-ADUser -Identity xxxx0242 -accountExpires 130618739743580353
    +                               ~~~~~~~~~~~~~~~
        + CategoryInfo          : InvalidArgument: (:) [Set-ADUser], ParameterBindingException
        + FullyQualifiedErrorId : NamedParameterNotFound,Microsoft.ActiveDirectory.Management.Commands.SetADUser

第二次尝试

Set-ADUser -identity xxxx0242 -Add @{accountExpires=" 130612691742815904"}

收到错误

Set-ADUser : The parameter is incorrect
At line:1 char:1
+ Set-ADUser -identity xxxx0242 -Add @{accountExpires=" 130612691742815 ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidOperation: (xxxx0242:ADUser) [Set-ADUser], ADInvalidOperationException
    + FullyQualifiedErrorId : ActiveDirectoryServer:87,Microsoft.ActiveDirectory.Management.Commands.SetADUser

第三次尝试

 Set-ADUser -Identity xxxx00242 -accountExpires 130618739743580353 
 Set-ADUser -identity xxxx0242 -Add @{AccountExpirationDate=" 130612691742815904"}

收到错误



我的powershell版本是5.1.14393.206或AD中的Set-ADUser cant update Account Expires字段?这是您需要输入有效日期时间的

例如,如果您想让帐户在1个月内到期

$date = Get-Date
$dateExpiry = $date.AddMonths(1)
Set-ADUser xxxx0242 -AccountExpirationDate $dateExpiry
请注意,返回的int64值可以很容易地转换为可用的datetime,例如添加6个月:

$currentExpiry = (Get-ADUser xxxx0242 -Properties AccountExpires).accountExpires
[datetime]$expireDate = $currentExpiry
$newExpireDate = $expireDate.AddMonths(6)
Set-ADUser xxxx0242 -AccountExpirationDate $newExpireDate

希望这有帮助

您需要输入有效的日期时间

例如,如果您想让帐户在1个月内到期

$date = Get-Date
$dateExpiry = $date.AddMonths(1)
Set-ADUser xxxx0242 -AccountExpirationDate $dateExpiry
请注意,返回的int64值可以很容易地转换为可用的datetime,例如添加6个月:

$currentExpiry = (Get-ADUser xxxx0242 -Properties AccountExpires).accountExpires
[datetime]$expireDate = $currentExpiry
$newExpireDate = $expireDate.AddMonths(6)
Set-ADUser xxxx0242 -AccountExpirationDate $newExpireDate
希望这有帮助