我有一个显示非常长的输出的命令 - 例如“help”命令。
我希望它立即跳到末尾(跳到“PS C:\Users\User”的部分),但我也希望它打印所有行(所以我不想使用 Ctrl+C)。
目前,我必须按住 Enter 键(最后一行有“-- More --”)然后它会慢慢打印出这些行,但是我不得不在到达末尾之前放弃。
这有可能吗?我在文档中没有找到有关此内容的任何信息。
答案1
这help
功能包裹Get-Help
命令[1]明确规定交互式输出分页对于较长的帮助文本,Windows 默认通过 - bare-bones -more.com
实用程序来获取。[2]
只需拨打电话Get-Help
,而无需help
绕过交互式寻呼。
[1] 执行 ,你可以看到此函数的定义(函数体)
$function:help
。注意,如果没有功能也不是别名命名help
存在,help
会隐式调用Get-Help
,因为动词Get
是默认动词;但是,如本例所示,最好避免依赖默认动词,因为有可能被具有该特定名称的命令抢占(请参阅关于命令优先权) 并且因为它使得调用变得缓慢。
[2]more.com
仅允许向前分页,不支持直接跳转到输出的开头或结尾(运行more.com /?
以了解详细信息)。但是,您可以覆盖 PowerShell 使用的分页程序,从而允许您替换更复杂的分页程序,例如less
- 请参阅这个答案。
答案2
这样怎么样?它只会显示最后 24 行。
help get-childitem | select -Last 24