Powershell – 使用date

我有一个像这样的pclist.csv文件:

---------------------------------------------- | Name | LastLogonTimestamp | Some Other Data | ----------------------------------------------- | 2342 | 23/05/2012 | Blah Blah Blah | ----------------------------------------------- | 3433 | | Yada Yada Yada | ----------------------------------------------- 

正如你所看到的,一些LastLogonTimestamp单元格不包含任何数据,有些可以。

我试图检查这个.csv使用像这样的PowerShellfunction:

 $assets = import-csv pclist.csv Function ActiveDesktop { foreach ($asset in $assets) { if ($asset.'LastLogonTimestamp' -le {get-date.adddays(-90) -format "ddMMyyyy"}) {write-host $asset.Name, $asset."LastLogonTimestamp"} } } 

我想看看哪些电脑不活动,但运行查询不会返回任何东西。 有人能指出我的方向吗?

使用空的LastLogonTimestamp或以上,然后90天获取所有logging:

 .\Import-Csv pclist.csv | ` ? { $_.LastLogonTimestamp -eq "" -or ` [DateTime]::Parse( $_.LastLogonTimestamp) -le [DateTime]::Today.AddDays(-90) }