为什么"Get-Content"不刷新直播内容?

Why "Get-Content" is not refreshing contents live?

我有一个日志文件并使用命令 Get-Content myLog.log –Wait 来显示该文件的内容,就像 linux 等价的 tail.

我注意到内容并没有像我从 tail 了解到的那样实时更新。内容仅在特定时间间隔后刷新。如何更改间隔,我想我必须为 Wait 传递一个参数,以便它知道要等待多长时间?

Get-Content cmdlet 没有公开 属性 也没有设置刷新间隔的函数。您可能必须自己做:

$linesPrinted = 0;

while ($true) 
{ 
    $content = Get-Content myLog.log
    $currentLineCount = $content | Measure-Object -Line | select -expand Lines

    if ($currentLineCount -gt $linesPrinted)
    {
        $content[$linesPrinted .. $currentLineCount]
        $linesPrinted = $currentLineCount
    }


    Sleep -Milliseconds 100 
}