我有一个Windows XP系统,并且用户帐户配置为在45天选项设置中使其密码到期。我试图弄清楚,无论是手动还是通过使用批处理文件,密码到期日期是基于当前登录的用户。我知道有VBScript文件可以实现这一点,但这些pc配置为不执行VBScript文件,因此我需要手动查看或批处理文件。
谢谢!
答案 0 :(得分:5)
如果这只是在一台计算机上,一个用户,并在本地运行...
net user username | findstr "expires"
多台计算机远程运行一个用户帐户...将所有计算机名称或IP放入文本文件(即systems.txt)
psexec @systems.txt net user username | findstr "expires"
psexec免于sysinternals
如果您想知道多台网络计算机上所有本地用户的到期日期,您可以使用powershell和psexec(远程计算机不需要powershell),如此...
$systems = get-content .\systems.txt;
foreach ($sys in $systems) {
foreach ($token in (Get-WmiObject Win32_UserAccount -ComputerName $sys -Filter "Domain='$sys'" | Select-Object -Property Name |ft -AutoSize -HideTableHeaders >> "$sys.txt")) { echo $token };
(cat "$sys.txt") -replace ' {2,}','' | ? {$_ -ne ''} | sc "$sys.txt"
foreach ($strUser in (get-content "$sys.txt")) {psexec \\$sys net user $strUser >> "$sys-accounts.txt"
}
}
你可能需要稍微调整一下脚本......希望这会有所帮助。