2011年7月27日水曜日

◆ActiveDirectory、コンピュータ一覧を取得する

Get-ADComputerコマンドレットでActiveDirectoryのコンピュータ一覧を取得してみた。

デスクトップにCSVで出力するサンプル。

001
002
003
004
005
006
007
008
009
010

$oPath = [environment]::GetFolderPath("desktop")
$outFile = Join-Path $oPath "コンピュータ一覧.csv"

Get-ADComputer -Filter *  -Properties description,lastlogon |
 
 
select name,description,
 @{
   name
="lastLogon"
expression={[DateTime]::FromFileTime([Int64]::Parse($_.
lastLogon))}
  } 
|
 
 
sort lastLogon | ConvertTo-Csv -NoTypeInformation |
 
 
Out-File $outFile -Encoding default

未使用のPCを調べたかったのでlastlogonプロパティを取得してみたが、lastlogon日付はFileTime型のようで変換が必要。

1601 年 1 月 1 日以降の 100 ナノ秒間隔の数を表します。この構造体は 64 ビット値です。

との事なので、[DateTime]::FromFileTime([Int64]::Parse($_.lastLogon))を使って変換してあげると良いみたいです。

0 件のコメント:

コメントを投稿