none
PowerShell.Форматирование выводимых datetime. RRS feed

  • Вопрос

  • Есть скрипт:
    $adSearcher = [adsisearcher]""
    $adSearcher.Filter = '(&(objectClass=user)(objectCategory=person)(!userAccountControl:1.2.840.113556.1.4.803:=2))'
    $adSearcher.PageSize = 1000
    $adSearcher.PropertiesToLoad.Add('lastLogonTimeStamp')
    $adSearcher.PropertiesToLoad.Add('SamAccountName')
    $adSearcher.PropertiesToLoad.Add('userAccountControl')
    $(foreach ( $dc in ([System.DirectoryServices.ActiveDirectory.Domain]::GetCurrentDomain()).DomainControllers ) {
    	$adSearcher.SearchRoot = 'LDAP://'+$dc.name;
    	$adSearcher.FindAll() | Select @{n="DC";e={$dc.name}},@{n="SamAccountName";e={$_.properties.item("samaccountname"
    )}}, @{n="LastLogonTimeStamp";e={[datetime]::FromFileTime(($_.properties.item("lastlogontimestamp")[0]))}}, @{n='LastLogonDC'; e= { $dc.name}}, @{n='userAccountControl'; e= { $_.properties.item("userAccountControl")}} })| Group SamAccountName | % { ($_.Group | sort LastLogonTimeStamp -Descending)[0] } | select SamAccountName, LastLogonTimeStamp,@{n='LastLogonDC'; e= { $dc.name.Trim(".mydomain.ru")}}, userAccountControl
    В нем не получается отформатировать выводимый LastLogonTimeStamp в виде -uformat "%y.%m.%d". Пожалуйста подскажите, как это сделать?

    • Изменено CrazyDocTI 25 июня 2015 г. 7:28
    25 июня 2015 г. 6:58

Ответы

  • [datetime]::FromFileTime(($_.Properties.Item("lastlogontimestamp")[0])).ToString("yy.MM.dd")

    или

    [datetime]::FromFileTime(($_.Properties.Item("lastlogontimestamp")[0])).ToString("%y.%m.%d")

    • Изменено KazunEditor 25 июня 2015 г. 7:03
    • Помечено в качестве ответа KazunEditor 25 июня 2015 г. 7:52
    25 июня 2015 г. 7:02
    Отвечающий

Все ответы