Powershell - 处理日期

Powershell - 处理日期

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

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

如您所见,一些 LastLogonTimestamp 单元不包含任何数据,而一些则包含。

我正在尝试使用如下 powershell 函数检查这个 .csv:

$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"}
    }
}

我想查看哪些 PC 处于非活动状态,但运行查询没有返回任何内容。有人能给我指明正确的方向吗?

答案1

获取所有空白记录LastLogonTimestamp或者超过 90 天的记录:

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

相关内容