gpt4 book ai didi

windows - 在 cygwin 下的 Windows 应用程序中有时无法识别输入 key

转载 作者:可可西里 更新时间:2023-11-01 12:43:03 25 4
gpt4 key购买 nike

在工作中,我经常使用 Cygwin,因为它为我提供了 Windows 广阔沙漠中的一片小绿洲。我不可避免地最终会通过 bash shell 运行一些非 Cygwin 程序,例如构建脚本(内部创建的批处理文件)和 Subversion CLI 二进制文件(我安装了 Windows 的)。 99% 的情况下,我使用此设置没有任何问题。然而,另外 1% 会导致一个奇怪的问题:

对于构建脚本和 SVN,大部分时间回车键都被正确解释。例如,我将启动数据库创建脚本,它会提示我输入服务器名称。我输入“localhost”并按回车键。一切安好。然后它走到最后,如果有错误,并使用 more 打印出来。 more 无法识别我按下的任何键。我必须按 Ctrl-C 退出它。

同样,如果我进行 Subversion 更新,通常一切都很好。然而,在交互式冲突解决发生的情况下,我通常会输入“tf”表示“他们已满”并按回车键,但没有任何反应。我必须使用 Ctrl-C 退出它并使用强制合并重新运行更新或在 Windows 中使用 TortoiseSVN 来执行此操作。

知道为什么 Cygwin 似乎随机不将回车键传递给程序吗?我认为这可能与 Unix 和 Windows 风格的行结尾有关,所以我尝试手动输入这些字符,但这似乎没有什么区别。谢谢。

编辑:我刚刚再次遇到这种情况,我意识到了一些事情。是 SVN 提示我输入密码。我输入了密码,它回显到屏幕上(错误),然后按回车键……什么也没有。再按几次回车,光标移动了,但什么也没有发生。我按下 Ctrl-C,它会将我转回 bash,然后它会显示“bash:[我的密码]:未找到命令”,然后是与我按下 enter 键的次数相等的一些新提示。所以发生的事情是输入从未进入 SVN,但在 SVN 退出后以某种方式被 bash 读取。我认为这可能有助于有人弄清楚发生了什么。

最佳答案

不幸的是,我认为您遇到了 Cygwin 和 windows/dos 控制台应用程序的问题之一。请参阅 http://www.cygwin.com/cygwin-ug-net/using-effectively.html 上的“控制台程序” .

这只是对 Windows 控制台应用程序的限制。例如,此行为对于 windows myqsl cmd 客户端和 svn 客户端很常见。

这里有一些需要注意的事情——我已经成功地将这种方法用于 Windows mysql 和 Windows svn 客户端:

1) 尝试确保您的 CYGWIN 环境变量中没有“tty”,看看是否有帮助(在“我的电脑”->“属性”->“高级”->“环境变量”中取消设置并关闭/重新启动任何 cygwin bash 提示) .

2) 不要使用 RXVT——而是使用基本的 Cygwin cmd 提示符。这是因为 RXVT 隐含“tty”并将打破上面的#1。

3) 尝试为遇到问题的 cmd 寻找一个“本地”Cygwin 包,而不是使用 Windows cmds。 (不过,我还没有找到适用于 cygwin 的 1.6 svn 客户端。)

祝你好运!达斯汀

关于windows - 在 cygwin 下的 Windows 应用程序中有时无法识别输入 key ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/202405/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com