0

Active Directory にクエリを実行して、ユーザーがログインした日数を返したいと考えています。今のところ、2012 年 2 月 26 日 9:28:28 AM のような lastlogon 日を取得できますが、その lastlogon から今日までの日数を取得したいと考えています。

これは、stackoverflow の他の投稿で見つけたスクリプトです。

Search-ADAccount -UsersOnly -SearchBase "OU=users,OU=City,dc=mydomain,DC=local" -AccountDisabled:$false | Get-ADUser -Properties Name, manager, LastLogon | Select Name, manager, @{N='LastLogon'; E={[DateTime]::FromFileTime($_.LastLogon)}} | export-csv u:\Australia.csv -Delimiter ";" -NoTypeInformation

「lastlogon」に加えて、「lastlogon」に加えて、「lastlogon」が 50 日前であることを意味する 50 を示す整数を返す CSV 呼び出しに「Last Logon Days」という別の列が必要です。

アップデート:

@Musaab Al-Okaidiの返信に従ってこのコマンドを使用しました

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

1 に答える 1

2

更新:これにより、最後のログオンからスクリプトが実行される日までの日数がわかります。

Search-ADAccount -UsersOnly  -AccountDisabled:$false | Get-ADUser -Properties Name, manager, LastLogon | select Name, manager,@{N='LastLogon'; E={[DateTime]::FromFileTime($_.LastLogon)}}, @{N='Last Logon Days'; E={$($(Get-Date) - $([DateTime]::FromFileTime($_.LastLogon))).Days}}
于 2013-02-19T13:13:48.037 に答える