如何将 Get-WinEvent 的 TimeCreated 转换为 yyyy-MM-dd-hh-mm-ss 格式?
How to convert Get-WinEvent's TimeCreated to yyyy-MM-dd-hh-mm-ss format?
在 Windows 7 上的 PowerShell 2.0 中,我可以按如下方式格式化 time/date 格式:
Get-Date -format yyyy-MM-dd-HH-mm-ss
输出为:
2016-06-07-01-04-16
但现在我有以下命令:
Get-WinEvent -max 1 | Select-Object TimeCreated, Id
输出为:
7.6.2016 13:01:46 444
注意:444 是 Id 列,在我们的例子中并不重要。
如何用yyyy-MM-dd-HH-mm-ss
格式化得到:
2016-06-07-13-01-46 444
一种方法是:
Get-WinEvent -max 1 | Select-Object TimeCreated, Id,
@{Name='SpecialDate';Expression={$_.TimeCreated.ToString('yyyy-MM-dd-HH-mm-ss')}}
生成:
TimeCreated : 7/06/2016 13:21:17
Id : 4648
SpecialDate : 2016-06-07-13-21-17
使用 Get-Member
您可以找到 CmdLet 的所有可能性(方法、属性、..):
Get-Date | Get-Member
通过 Get-Help
您可以了解如何使用 CmdLet:
Get-Help Select-Object -Examples
希望这对您有所帮助。
您可以使用 calculated property:
Get-WinEvent -max 1 | Select-Object @{name='TimeCreated'; expression={$_.TimeCreated.ToString("yyyy-MM-dd-hh-mm-ss")}}, Id
在 Windows 7 上的 PowerShell 2.0 中,我可以按如下方式格式化 time/date 格式:
Get-Date -format yyyy-MM-dd-HH-mm-ss
输出为:
2016-06-07-01-04-16
但现在我有以下命令:
Get-WinEvent -max 1 | Select-Object TimeCreated, Id
输出为:
7.6.2016 13:01:46 444
注意:444 是 Id 列,在我们的例子中并不重要。
如何用yyyy-MM-dd-HH-mm-ss
格式化得到:
2016-06-07-13-01-46 444
一种方法是:
Get-WinEvent -max 1 | Select-Object TimeCreated, Id,
@{Name='SpecialDate';Expression={$_.TimeCreated.ToString('yyyy-MM-dd-HH-mm-ss')}}
生成:
TimeCreated : 7/06/2016 13:21:17
Id : 4648
SpecialDate : 2016-06-07-13-21-17
使用 Get-Member
您可以找到 CmdLet 的所有可能性(方法、属性、..):
Get-Date | Get-Member
通过 Get-Help
您可以了解如何使用 CmdLet:
Get-Help Select-Object -Examples
希望这对您有所帮助。
您可以使用 calculated property:
Get-WinEvent -max 1 | Select-Object @{name='TimeCreated'; expression={$_.TimeCreated.ToString("yyyy-MM-dd-hh-mm-ss")}}, Id