我似乎无法使用MINTTY或使用默认的Cygwin终端打开PSQL的交互模式,它只是在命令psql databasename
下停顿并且什么都不做。让它响应的唯一方法是ctrl + C。它在命令提示符下工作正常。
我知道对于Python你需要输入-i参数 - Cygwin有类似的技巧吗?
答案 0 :(得分:2)
我在Mercurial(hg)+ OpenSSH,Python和MinTTY上遇到了类似的问题,但是在MSYS而不是CygWin下。我对mysql
也有同样的问题。尽管如此,据我所知,这个和我的问题都是由于MinTTY没有处理使用本机Windows控制台功能的应用程序造成的。
我按照https://code.google.com/p/mintty/issues/detail?id=56#c64
的评论64中的解决方案解决了我的问题在我的路径中编译并安装了winpty(https://github.com/rprichard/winpty)项目后,我能够从MinTTY shell运行 native Python(在交互模式下),Mercurial和MySQL构建或切换(例如python -i
)。我只需要在console.exe
或console
命令之前附加python
或hg
。为方便起见,我添加了alias hg="console.exe hg"
等别名,所以我可以使用相同的命令,无论我是在Linux shell还是Windows MinTTY bash shell中。
答案 1 :(得分:1)
我遇到了同样的问题。出于某种原因
psql -l -h localhost -U postgres
返回数据库的列表,但psql上的任何其他变体都会以静默方式挂起。
编辑:我在这里找到答案:how to set up the psql command in cygwin?
Windows psql使用Windows控制台功能; Cygwin跑得最好 像Console2这样的终端,它不支持Windows控制台API。所以 psql根本不适用于Cygwin。我们需要的是Cygwin 构建像psql
这样的客户端工具