退出PowerShell的键盘快捷方式

4
如果您可以使用键盘快捷键WIN + X> A以管理员权限启动PowerShell,那么如何退出它呢?Alt + F4无效。我已经尝试了其他可能的组合,但似乎都不起作用。
注意:我不是在询问Powershell ISE(可以使用Alt + f4关闭)。我在询问即时可用的终端PowerShell。

2
如果您想要现有的按键选项,可以键入 Alt + Spacebar,然后是 Close 快捷字符。 - No Refunds No Returns
2
@NoRefundsNoReturns 谢谢,使用alt+空格然后按c很快。 - pragun
3个回答

8

要使用系统菜单关闭 PowerShell 窗口,您可以使用

Alt + Spacebar, C

几乎每个Windows窗口都有这个选项。关闭或退出选项可能会根据上下文而有所不同,因此您需要尝试并查看。本答案在撰写时是准确的,但事情可能会发生变化。

刚试了一下,在 Powershell Core 下也适用。(在 Windows 下) - No Refunds No Returns

3
更新:如果您正在使用Windows 终端,则无需解决方法:Alt-F4 可以直接使用
因此,以下内容仅适用于常规 (conhost.exe) 控制台窗口。

注意:

  • 对于使用不同键(严格来说,是键盘快捷键后跟附加的、与 UI 语言相关的按键)的即席解决方案,但不需要任何设置,请参见No Refunds No Returns 的答案

  • 答案提供了一种透明工作的解决方法,即使用原始快捷键,但它需要修改您的$PROFILE文件;好处是,您可以使用相同的技术使其他不可用的快捷键也可用


默认导入的PSReadline模块阻止了Alt+F4的有效性[1]

虽然在原则上卸载 PSReadline (Remove-Module -Force PSReadline) 是一个选项,但如果您这样做,您将失去宝贵的命令行编辑功能。

因此,最好的方法是为 PSReadline 定义一个Alt+F4处理程序,该处理程序模拟默认行为:

将以下内容添加到您的$PROFILE中,它设置了一个PSReadline键码处理程序,该处理程序使用.SendKeys()方法WScript.Shell COM对象发送Alt+F4到调用方的控制台窗口,从而关闭它:

Set-PSReadlineKeyHandler Alt+F4 -ScriptBlock { 
  (New-Object -ComObject WScript.Shell).SendKeys('%{F4}')
}

[1] 自 v2.0.0-beta3 开始,存在长期的技术问题。在这个GitHub问题中详细解释了此问题,并提供了其他标准键盘快捷键(如Ctrl+F)的解决方法。


0
安装Windows Terminal会导致cmd和Powershell在Windows Terminal中启动,您可以选择使用CTRL + SHIFT + W关闭它。
这不适用于以管理员身份打开的命令提示符。但您可以以管理员身份启动Windows Terminal。这可能不适用于您的问题,因为您不是自己启动shell吗?

enter image description here


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接