我想重複* nix watch
功能,如johnrizzo1here所提供的。如何強制隱含的PowerShell格式表重複標題重複輸出?
function Watch {
[CmdletBinding(SupportsShouldProcess=$True,ConfirmImpact='High')]
param (
[Parameter(Mandatory=$False,
ValueFromPipeline=$True,
ValueFromPipelineByPropertyName=$True)]
[int]$n = 10,
[Parameter(Mandatory=$True,
ValueFromPipeline=$True,
ValueFromPipelineByPropertyName=$True)]
[string]$command
)
process {
$cmd = [scriptblock]::Create($command);
While($True) {
Clear-Host;
Write-Host "Command: " $command;
$cmd.Invoke();
sleep $n;
}
}
}
Export-ModuleMember -function Watch
watch -n 1 '$PSVersionTable.PSVersion'
問題是隻有第一次運行會顯示標題。在這之後是長相醜陋的頭正在從輸出剝離:
Command: $PSVersionTable.PSVersion
5 0 10586 117
所有其他PS解決watch
在上面的鏈接從有同樣的問題的方式。
這適用於臨時命令,我可以增加明確的格式-表。這不適用於通用命令。 –
因此,表頭被寫入一次,然後你清理屏幕來做一些事情PowerShell並不是真的。 –
玩得開心, –