0

フィールドの$null値をLastlogon文字列「neverlog」に置き換え、この値を「LastLogondays」列に配置するにはどうすればよいですか。

Search-ADAccount -UsersOnly  -AccountDisabled:$false | Get-ADUser -Properties Name, LastLogon | select Name, @{N='LastLogon'; E={[DateTime]::FromFileTime($_.LastLogon)}}, @{N='Last Logon Days'; E={$($(Get-Date) - $([DateTime]::FromFileTime($_.LastLogon))).Days}}

ネットワークにログオンしたことがないアカウントがあり、最終ログオン日である12/31/16007:00:00PMが返されます。これは少し遠いです。

4

1 に答える 1

1

これをselectステートメントとして試してください。

select Name, @{N='LastLogon'; E={`
    if ( [DateTime]::FromFileTime($_.LastLogon) -eq $null ) {
        return "Never log" }
    else { return [DateTime]::FromFileTime($_.LastLogon) }}},`
    @{N='Last Logon Days'; E={`
    if ( [DateTime]::FromFileTime($_.LastLogon) -eq $null ) {
        return "Never log" }
    else {  return $($(Get-Date) - $([DateTime]::FromFileTime($_.LastLogon))).Days}}}

現在、これをテストすることはできませんが、過去に同様のことを成功させてきました。

于 2013-02-22T00:07:14.460 に答える