Python no se ejecutará en git bash (Windows). Cuando escribo python en la línea de comando, me lleva a una línea en blanco sin decir que ha ingresado a python 2.7.10 como lo hace en Powershell. No me da un mensaje de error, pero Python simplemente no se ejecuta.
Ya me aseguré de incluir las variables ambientales en PATH c:\python27
. ¿Qué más puedo consultar?
Una sesión en la que se produce este problema tiene el siguiente aspecto:
user@hostname MINGW64 ~
$ type python
python is /c/Python27/python
user@hostname MINGW64 ~
$ python
... sentado allí sin volver a la indicación.
Respuestas:
Simplemente ingrese esto en su shell git en windows ->
alias python='winpty python.exe'
, eso es todo y tendrá un alias para el ejecutable de python. DisfrutarPD Para la adición de alias permanente, ver más abajo,
luego abra .bashrc, agregue su comando desde arriba y guarde el archivo. Necesita crear el archivo a través de la consola o no puede guardarlo con el nombre correcto. También debe reiniciar el shell para aplicar el cambio.
fuente
quit()
para escapar del intérprete.^Z
(ctrl-Z) +return
para salir.alias python='winpty /c/Python27/python.exe'
No veo la siguiente opción en una lista de respuestas, pero puedo obtener un mensaje interactivo con la tecla "-i":
fuente
Este es un error conocido en MSys2, que proporciona el terminal utilizado por Git Bash. Puede solucionarlo ejecutando una compilación de Python sin compatibilidad con ncurses, o utilizando WinPTY , que se utiliza de la siguiente manera:
Es probable que los binarios preconstruidos para msys funcionen con Git Bash. (¡Verifique si hay una versión más nueva si ha pasado un tiempo significativo desde que se publicó esta respuesta!).
A partir de Git para Windows 2.7.1, también intente usar
winpty c:Python27/python.exe
; WinPTY se puede incluir listo para usar.fuente
build/console.exe c:/Python27/python.exe
- es esto debe ejecutarse en la consola GitMsys o de otra manera?build
es el directorio en el que seconsole.exe
encuentra; Actualice la ruta de manera apropiada dependiendo de dónde / cómo la instaló realmente.winpty c:/Python27/python.exe
, sin hacer nada adicional. La utilidad winpty.exe se puede encontrar en Git \ usr \ bin. Estoy usando Git para Windows v2.7.1Soy usuario de Windows 10 y he instalado GIT en mi sistema simplemente aceptando los valores predeterminados.
Después de leer las respuestas anteriores, obtuve 2 soluciones propias y estas 2 soluciones funcionan perfectamente en GIT bash y me facilitan la ejecución de declaraciones de Python en GIT bash.
Adjunto 3 imágenes de mi terminal GIT bash. Primero con problemas y los últimos 2 como soluciones.
PROBLEMA : el cursor solo espera después de presionar el
python
comandoSOLUCION 1
Ejecutar
winpty <path-to-python-installation-dir>/python.exe
en terminal GIT bash.Nota: No utilice
C:\Users\Admin
como estilo de ruta en GIT fiesta, en lugar de utilizar/C/Users/Admin
.En mi caso, ejecuté el
winpty /C/Users/SJV/Anaconda2/python.exe
comando en GIT bashO si no conoce su nombre de usuario , ejecute
winpty /C/Users/$USERNAME/Anaconda2/python.exe
SOLUCIÓN 2
Simplemente escriba
python -i
y eso es todo.Gracias.
fuente
winpty
también funcionará con Windows Python Launcher, por lo que todo lo que necesita es, por ejemplo,alias py='winpty py'
en su .bashrc y luego volver a la normalidad.Intenta en
python -i
lugar depython
, es una cosa del cursor.fuente
Además de la respuesta de @ Charles-Duffy, puede usar winpty directamente sin instalar / descargar nada adicional. Solo corre
winpty c:/Python27/python.exe
. La utilidad winpty.exe se puede encontrar en Git \ usr \ bin. Estoy usando Git para Windows v2.7.1Los binarios precompilados de @ Charles-Duffy es la versión 0.1.1 (según el nombre del archivo), mientras que el incluido es 0.2.2
fuente
Solución alternativa de Git Bash: inicie Python 2 y Python 3 con alias
HI . Esta es (para mí) la mejor solución para ejecutar Python (Python 2.7 y Python 3.x) directamente desde Git Bash en Win 10 => agregando alias en el archivo de alias que utiliza Git Bash.
1) Abra (con un editor de texto como Atom u otro) los aliases.sh
por ejemplo: en mi caso el archivo está en
C:\Software\Develop\Git\etc\profile.d\aliases.sh
2) Agregue su alias para Python
En mi caso, los python.exe están instalados en:
Por lo tanto , debe crear 2 alias, uno para Python 2 ( llamé python2 ) y el otro para Python 3 ( nombré solo python ) Git Bash usa la estructura de archivos de Linux, por lo que debe cambiar el "\" para "/" y si usted tener una ruta como mi ejemplo de Automatización de red lo pones con ""
"Automatización de red" , por ej.
winpty es el comando mágico que llamará al ejecutable.
Entonces agregue estas líneas al comienzo de aliases.sh
3) Agregue o modifique otros alias (si lo desea)
También modifiqué el ll alias para mostrar todos los archivos y en una lista legible por humanos:
4) Guarde el archivo aliases.sh
5) OK !!! cierra y relanza tu Git Bash
Ahora, de forma permanente, puede iniciar Python directamente desde Git Shell simplemente escribiendo
$ python
-> lanzar Python 3$ python2
-> lanzar Python 2$ ll
-> ingresa un ls -lah para mostrar rápidamente su lista detallada de archivosfuente
Puede cambiar el objetivo del acceso directo de Git Bash desde:
a
Esta es la forma en que ConEmu solía iniciar git bash (versión 16). La versión reciente comienza normalmente y así es como llegué allí ...
fuente
-l
: Haga que bash actúe como si se hubiera invocado como un shell de inicio de sesión-i
: si las opciones -i están presentes, el shell es interactivoescriba: 'winpty python' y funcionará
gitbash tiene algunos problemas al ejecutar cualquier comando que comience con python. esto también se aplica a cualquier comando python manage.py. Siempre comienza con 'winpty python manage.py' Al menos esto es lo que funciona para mí. Ejecutando Windows 10.
fuente
Además de la respuesta @Vitaliy Terziev
intente
touch .bash_profile
y luego agregue el alias en el archivo.fuente
2 soluciones, en lugar de una solución: en mi Git Bash, el siguiente comando se cuelga y no recibo el mensaje:
Entonces solo uso:
Como algunas personas han señalado anteriormente, también puede usar:
.
fuente
Estoy usando MINGW64 a través de Visual Studio Code en Windows 10 e intento instalar
node-sass
(lo cual requierepython2
). Seguí felixrieseberg / windows-build-tools # 56 en Github que resolvió mi problema.Este es un caso especial, pero estoy publicando en caso de que alguien tenga el mismo problema:
npm --add-python-to-path='true' --debug install --global windows-build-tools
Esto instala python y otras herramientas de compilación necesarias para
%USERPROFILE%\.windows-build-tools\python27
.fuente
Para la versión 3.7.3 de Python en vscode con gitbash como terminal predeterminado, estuve lidiando con esto por un tiempo y luego seguí el consejo de @Vitaliy Terziev de agregar el alias a .bashrc pero con la siguiente especificación:
alias python = '"/ c / Users / my user name / AppData / Local / Programs / Python / Python37 / python.exe"'
Observe la combinación de comillas simples y dobles debido a los espacios de "mi nombre de usuario".
Para mí, "winpty" no pudo resolver la ruta de Python en vscode.
fuente
Otro ejemplo de este problema es usar la interfaz de línea de comandos de AWS Elastic Beanstalk (awsebcli, eb cli) de git bash (MINGW64, Mintty) en Windows (usando git versión 2.19.0.windows.1).
Solo estoy publicando esto porque me tomó un tiempo terminar aquí, buscando
eb-cli
problemas específicos.Los comandos como
eb init
oeb config save
, que requieren la entrada del usuario, parecen causar un congelamiento / bloqueo. En realidad, supongo que la consola no se actualiza con el texto que solicita la entrada del usuario. Además,eb deploy
solo actualiza el texto de la consola una vez que el comando ha finalizado, por lo que no puedo ver las actualizaciones de progreso hasta que termine.Como se menciona en las notas de lanzamiento de git para Windows (para v2.19.0) y, por ejemplo, en la respuesta de Xun Yang , una solución es ejecutar
winpty eb <command>
(en lugar de soloeb <command>
)Una alternativa, como se sugiere en este tema de git para Windows , podría ser usar la consola nativa de Windows en lugar de mintty (opción durante la instalación de git).
fuente
El que funcionó para mí es como se mencionó anteriormente en estas excelentes respuestas anteriores, es el alias de la siguiente manera: (Estoy usando anaconda, así que primero encuentre dónde está la ruta de Python, luego agréguela al alias en git bash). 1. en el terminal anaconda ejecuto:
where python
2. en git bash ejecuto:alias python='winpty "C:\ProgramData\Anaconda3\envs\your_env_name\python.exe"'
3. Hecho. Python se define dentro del git Bash usando el alias.Gracias a (Vitaliy Terziev & hygull) por sus útiles respuestas.
fuente
python.exe -i
funciona pero tiene problemas al salir del modo interactivo enviando "^ Z" (CTRL + Z). Entonces, parece mejor usarlowinpty python.exe
en Git Bash para Windows.Use el
~/bin
directorio para hacer un archivo de ajuste / referencia (como~/bin/python
) que estará accesible en todas partes (puede usar referencias de versiones diferentes como~/bin/python37
).Código dentro del archivo:
Simplemente no me gustan estos alias "mágicos" que siempre olvidas de dónde provienen, y que a veces conducen a problemas en algunos casos.
~/bin/python
archivo y-i
parámetro:fuente
19480756 [sig] bash 2740! sigpacket::process: Suppressing signal 18 to win32 process (pid 14820)
- ejemplo de respuesta después de enviar^Z
con modo interactivo ejecutadopython.exe -i
Escriba el comando PY en lugar de Python. Invocar al intérprete (python.org).
fuente
Echa un vistazo a esta respuesta:
¿Git Bash no ejecutará mis archivos python?
El camino en Git Bash debe establecerse así:
fuente