Powershell写入控制台
我正在尝试在控制台上写入错误编号和消息。我正在使用以下代码:Powershell写入控制台,powershell,console,Powershell,Console,我正在尝试在控制台上写入错误编号和消息。我正在使用以下代码: $dir = "d:\logs\prov\" $latest = Get-ChildItem -PAth $dir | Sort-Object LastAccessTime -Descending | Select-Object -First 1 $eCounter = get-content $dir$latest | select-string "ERROR" $eCounter.Coun
$dir = "d:\logs\prov\"
$latest = Get-ChildItem -PAth $dir | Sort-Object LastAccessTime -Descending | Select-Object -First 1
$eCounter = get-content $dir$latest | select-string "ERROR"
$eCounter.Count
$eText = "There are " + $eCounter.Count + " errors returned"
if ($eCounter.count -gt 0)
{
$eCounter.Count
$eText
}
正如代码所示,它查找文件夹以查找最新的日志文件,计算“错误”条目的数量,并将其与消息一起写入控制台。问题是结果是写了三行(如下所示),而不是两行。这个数字写了两次,原因我搞不懂。我需要它写一次
五,
五,
返回了5个错误老实说,很明显
$dir = "d:\logs\prov\"
$latest = Get-ChildItem -PAth $dir | Sort-Object LastAccessTime -Descending | Select-Object -First 1
$eCounter = get-content $dir$latest | select-string "ERROR"
### LINE 1 (Number only)
$eCounter.Count
$eText = "There are " + $eCounter.Count + " errors returned"
if ($eCounter.count -gt 0)
{
### LINE 2 (Number only)
$eCounter.Count
### LINE 3 (Full text)
$eText
}
如果只需要“返回了…个错误”一行,则删除两行
$eCounter.count
行。将行$eText更改为以下内容,并查看结果是否更改:
$eText = "There are " + [string]$eCounter.Count + " errors returned"
问题是计数是一个整数,因此不能正确地将其追加到字符串中。我说的话无论如何都是错的。也许我对OP的态度太强硬了,但我投了反对票,原因如下:这些问题显示我几乎没有努力。这个号码被贴了三次,在三个不同的地方,唯一使用的一行是什么?很明显,你不应该在不展示你自己尝试过的东西的情况下提问。在小范围内(