Python将无法在git bash (Windows)中运行。当我在命令行中输入python时,它会把我带到一个空行,而不会像在Powershell中那样说它已经输入了python 2.7.10。它没有给我一个错误消息,但python就是不运行。

我已经确保PATH中的环境变量包括c:\python27。我还能检查什么?


发生此问题的会话如下所示:

user@hostname MINGW64 ~
$ type python
python is /c/Python27/python

user@hostname MINGW64 ~
$ python

...坐在那里,不回到提示。


当前回答

这个问题的另一个例子是在windows(使用git版本2.19.0.windows.1)中从git bash (MINGW64, Mintty)使用AWS Elastic Beanstalk命令行界面(awsebcli, ebcli)。

我只是发布这个,因为我花了一段时间来结束这里,搜索eb-cli的具体问题。

像eb init或eb config save这样需要用户输入的命令似乎会导致冻结/挂起。实际上,我猜控制台并没有更新请求用户输入的文本。此外,eb deploy只在命令完成后更新控制台文本,所以直到完成我才看到进度更新。

正如git for windows发布说明(v2.19.0版)中提到的,例如在Xun Yang的回答中,一个解决方案是运行

Winpty eb <command>(而不是eb <command>)

另一种选择,正如在这个git for windows问题中所建议的,可以使用windows本机控制台而不是mintty (git安装期间的选项)。

其他回答

这个问题的另一个例子是在windows(使用git版本2.19.0.windows.1)中从git bash (MINGW64, Mintty)使用AWS Elastic Beanstalk命令行界面(awsebcli, ebcli)。

我只是发布这个,因为我花了一段时间来结束这里,搜索eb-cli的具体问题。

像eb init或eb config save这样需要用户输入的命令似乎会导致冻结/挂起。实际上,我猜控制台并没有更新请求用户输入的文本。此外,eb deploy只在命令完成后更新控制台文本,所以直到完成我才看到进度更新。

正如git for windows发布说明(v2.19.0版)中提到的,例如在Xun Yang的回答中,一个解决方案是运行

Winpty eb <command>(而不是eb <command>)

另一种选择,正如在这个git for windows问题中所建议的,可以使用windows本机控制台而不是mintty (git安装期间的选项)。

如果你运行Windows PowerShell命令并发生错误,错误记录将被追加到名为$error的“自动变量”中。

您可以在同一个PowerShell会话中使用$error变量来查找错误。

$Error变量包含一个信息集合,这就是为什么使用$Error[0]可以获得错误消息对象的原因。此外,$Error[0]变量将保存遇到的最后一个错误消息,直到PowerShell会话结束。

输入:'winpty python',它将工作

在运行任何以python开头的命令时,git会出现一些问题。这也适用于任何python manage.py命令。总是以“winpty python manage.py”开头,至少这对我来说是有效的。运行Windows 10。

除了@Charles-Duffy的答案,你可以直接使用winpty,而不需要安装/下载任何额外的东西。运行winpty c:/Python27/python.exe即可。winpty.exe工具可以在Git\usr\bin中找到。我使用的是Git for Windows v2.7.1

@Charles-Duffy预构建的二进制文件是0.1.1版本(根据文件名),而包含的是0.2.2版本

我在答案列表中看不到下一个选项,但我可以使用“-i”键获得交互式提示:

$ python -i
Python 3.5.2 (v3.5.2:4def2a2901a5, Jun 25 2016, 22:18:55)
Type "help", "copyright", "credits" or "license" for more information.
>>>