我使用Powershell
從AD中提取簡單數據。該腳本拉從文本文件中的用戶名和類似於:一年錯誤使用PowerShell腳本從AD中提取日期
Import-Module ActiveDirectory
Get-Content c:\temp\userlist.txt | Foreach-Object {
$user = $_
$fullname = (Get-ADuser -identity $user | foreach {$_.Name})
$email = (Get-ADUser -identity $user -properties * | foreach {$_.mail})
$lastlog = (Get-ADUser -identity $user -properties * | foreach {$_.lastLogon})
$lastlogstr = (Get-Date -format "yyyy MMM d" $lastlog)
"$user,$fullname,$email,$lastlog,$lastlogstr"
}
當我運行它,所有正確的數據拉,我會看到(例如)
XXXXX,約翰·史密斯, JSMITH @ company.com,130252373811789928,0413 10月2日
當我檢查活動目錄,並使用屬性編輯器來查看「lastLogon」,我看到
2013年10月2日下午8時29分41秒中部夏令時間
如果我點擊查看該字段,我會看到130252373811789928如上所示。
但是對於我查詢的絕對每個用戶,無論我如何格式化日期(即如上所述,使用D等),它總是在0413年而不是2013年。同樣,它在2011年顯示0411,等
我無法想象爲什麼會發生這種情況。 Powershell正在從Windows 7系統運行,並且我嘗試了使用ISE和powershell命令。
哦,我發現http://en.wikipedia.org/wiki/1601它指定它只是登錄時間這樣工作。對不起,我正在重新編輯這個評論,因爲我沒有仔細閱讀! – Debra
是的,那可行,謝謝!我爲這個草率的評論道歉。 – Debra