如何从此日志文件行中提取日期和时间?原文是:
Build started 6/4/2015 11:25:47 AM.
这段代码让我大部分时间:
$x = (Get-Content C:\Users\myusername\Documents\SQLScripts\TestLogs\Lab1.log)[0]
"'" + $x.SubString($x.IndexOf(' ')+1, ($x.LastIndexOf(' ')-$x.IndexOf(' '))-1) + "'"
但我的输出仍然包括“已开始”
'started 6/4/2015 11:25:47'
我似乎不知道如何正确使用IndexOf命令。
答案 0 :(得分:1)
我建议使用-match
,您可以从:
type "log.txt" `
| where { $_ -match "([0-9]+/[0-9]+/[0-9]+ [0-9]+:[0-9]+:[0-9]+ (AM|PM))" } `
| foreach { $matches[0] }