【问题标题】:Windows PowerShell ISE doesn't promt for inputWindows PowerShell ISE 不提示输入
【发布时间】:2012-01-10 02:15:13
【问题描述】:

我使用控制台作为管理 mercurial 存储库的工具。使用经典的 cmdConsole2 我输入:

hg in

控制台提示如下:

D:\workspace\someproject>hg in
http authorization required
realm: Bitbucket.org HTTP
user: xorty
password:

显然,我输入密码。

但是当我在 powershell 控制台中键入“hg in”时,它不会提示任何内容。它只是一直在说: Running script / selection. Press Ctrl + Break to stop

我能否让 PowerShell ISE 像经典控制台一样工作,或者这不是 PowerShell 的工作方式?

【问题讨论】:

  • 您是否尝试过 PowerShell 命令提示符或只是 ISE? manojlds 的回答对我来说似乎是正确的。

标签: windows powershell mercurial cmd


【解决方案1】:

PowerShell ISE 确实是does not support console applications that require interactive input。链接的博客条目详细说明了如何处理。

由于 PowerShell ISE 不是控制台,普通控制台应用程序无法完成它们习惯的所有操作,当然 PowerShell cmdlet 可以正常工作,因为有几件事取决于 PowerShell 主机应用程序(您会看到图形提示以 Read-Host 为例)。

Console2 通过将实际控制台保持在一个隐藏窗口中并反复轮询它以进行更改并相应地向该窗口发送输入来模拟普通控制台。

【讨论】:

  • 感谢您的解释,但很遗憾:/
【解决方案2】:

Powershell ISE(集成脚本环境)不是标准的 Powershell 控制台。 ISE,顾名思义,是一个非常基本的基于 GUI 的脚本编写工具,不支持交互式控制台应用程序(在 ISE 控制台上尝试 cmd 并查看错误消息)

打开 powershell.exe,然后运行所需的命令。它的行为与 cmd 非常相似。或者,在 ISE 中按 CTRL+SHIFT+P 并在那里运行命令。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-01-25
    • 1970-01-01
    • 2013-10-02
    • 2014-03-02
    • 2020-04-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多