我正在玩 PowerShell ,我发现自己在运行命令之前不断输入cls
。或者更糟糕的是,我运行一个命令,意识到其他东西的输出使导航变得困难,运行cls
,然后重新运行我的命令。
有没有办法在运行每个命令之前清除上一个命令的输出?显然,如果可以用命令或简单的东西切换它,那将是理想的,但无论什么都可行。 :)
另外,我正在玩 PS 3 , ISE 和 PowerGUI 。
答案 0 :(得分:4)
知道这个年龄较大,但我想我会把这个传给其他任何人 -
我使用的一个技巧是简单地将“cls”作为我的PowerShell编辑器屏幕中的第一行(在我的例子中,使用PowerShell ISE)。然后每次运行我的脚本时,ISE中的PowerShell控制台都会被清除,从而节省了时间,因此只显示了我最近的运行。
我不建议在生产脚本中保留“cls” - 但它对于ISE中的迭代测试很有帮助,您可以根据脚本输入在PowerShell控制台窗口中不断检查输出。
答案 1 :(得分:0)
只要PowerShell提示输入命令,就会执行一个函数prompt。在我的系统(PS v3,ISE)上,内置脚本是
$host.ui.rawui.WindowTitle = ($host.ui.rawui.WindowTitle -split ":")[0] + ": $pwd"
$(if (test-path variable:/PSDebugContext) {
'[DBG]: '
} else {
''
}) +
'PS' +
$(if ($nestedpromptlevel -ge 1) { ">>>" } else { "> "})
您可以替换或修改此脚本。例如,您可以将cls命令放在上面脚本的顶部。
答案 2 :(得分:0)
在PowerShell中,为了清除屏幕,你可以输入Clear-Host;,它的别名,cls;清楚或其等价物[System.Console] :: Clear();。
答案 3 :(得分:0)
当您的Powershell(或相应的CMD)在PSEXEC会话中运行时,CLS,Clear和Clear-Host不起作用。