Python ne fonctionne pas dans la ligne de commande git bash

Python ne fonctionnera pas sous git bash (Windows). Quand je tape python dans la ligne de commande, il m'amène à une ligne blanche sans dire qu'il est entré dans python 2.7.10 comme il le fait dans Powershell. Il ne me donne pas un message d'erreur, mais python ne fonctionne tout simplement pas.

j'ai déjà fait en sorte que les variables environnementales dans le chemin inclus c:python27 . Quoi d'autre puis-je vérifier?


une séance où cette question se pose ressemble à ce qui suit:

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

user@hostname MINGW64 ~
$ python

...assis là, sans avoir à retourner à l'invite de commandes.

109
demandé sur wasabigeek 2015-09-16 02:18:07

11 réponses

entrez juste ceci dans votre shell git sous windows - > alias python='winpty python.exe' , c'est tout et vous allez avoir un alias pour l'exécutable python. Profiter de

P. S. permanente alias voir ci-dessous,

cd ~
touch .bashrc

alors ouvrez .bashrc, ajoutez votre commande ci-dessus et sauvegardez le fichier. Vous devez créer le fichier via la console ou vous ne pouvez pas enregistrer avec le bon nom. Vous devez également redémarrer le shell pour appliquer la modification.

172
répondu Vitaliy Terziev 2017-05-10 07:25:18

il s'agit d'un bug connu dans MSys2, qui fournit le terminal utilisé par Git Bash. vous pouvez contourner cela en exécutant un build Python sans support ncurses, ou en utilisant WinPTY , utilisé comme suit:

pour exécuter un programme de console Windows dans mintty ou Cygwin sshd, pré-lancer la console.exe à la ligne de commande:

$ build/console.exe c:/Python27/python.exe
Python 2.7.2 (default, Jun 12 2011, 15:08:59) [MSC v.1500 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> 10 + 20
30
>>> exit()

the prébuilt binaries for msys sont susceptibles de fonctionner avec Git Bash. (Vérifiez s'il y a une nouvelle version si beaucoup de temps s'est écoulé depuis que cette réponse a été postée!).


à partir de Git pour Windows 2.7.1, essayez également d'utiliser winpty c:Python27/python.exe ; WinPTY peut être inclus hors de la boîte.

46
répondu Charles Duffy 2016-02-08 22:38:41

Je ne vois pas l'option suivante dans une liste de réponses, mais je peux obtenir l'invite interactive avec la touche"- 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.
>>> 
42
répondu vav 2016-09-29 19:44:33

je suis l'utilisateur windows 10 et j'ai installé GIT dans mon système en acceptant simplement les valeurs par défaut.

après avoir lu les réponses ci-dessus, j'ai eu 2 solutions pour les miennes et ces 2 solutions fonctionnent parfaitement sur git bash et me facilitent l'exécution des instructions Python sur git bash.

je joins 3 images de mon terminal GIT bash. 1er avec problème et les 2 derniers en tant que solutions.

problème - le curseur attend juste après avoir appuyé sur python commande

enter image description here

SOLUTION 1

Exécuter winpty <path-to-python-installation-dir>/python.exe sur GIT bash terminal.

Note: ne pas utiliser C:\Users\Admin like path style git bash, au lieu d'utiliser /C/Users/Admin .

dans mon cas, j'ai exécuté winpty /C/Users/SJV/Anaconda2/python.exe commande sur GIT bash

ou si vous ne connaissez pas votre nom d'utilisateur alors exécutez winpty /C/Users/$USERNAME/Anaconda2/python.exe

enter image description here

SOLUTION 2

enter image description here

Merci.

11
répondu hygull 2018-04-02 03:58:29

en plus de la réponse de @Charles-Duffy, vous pouvez utiliser winpty directement sans installer/télécharger quoi que ce soit supplémentaire. Il suffit de lancer winpty c:/Python27/python.exe . L'utilitaire winpty.exe peut être trouvé à la Git\usr\bin. J'utilise Git pour Windows v2.7.1

les binaires prébuilés de @Charles-Duffy est la version 0.1.1 (selon le nom du fichier), tandis que celui inclus est 0.2.2

8
répondu Xun Yang 2016-02-08 22:26:04

en plus de la réponse de @ Vitaliy Terziev

essayer touch .bash_profile , puis ajouter un alias dans le fichier.

1
répondu Linus Yang 2018-01-11 06:46:15

vous pouvez changer la cible pour Git Bash raccourci de:

"C:\Program Files\Git\git-bash.exe" --cd-to-home 

à

"C:\Program Files\Git\git-cmd.exe" --no-cd --command=usr/bin/bash.exe -l -i

C'est ainsi que ConEmu démarrait git bash (version 16). La version récente commence normalement et c'est comme ça que je suis arrivé là...

1
répondu Igonato 2018-01-14 06:39:20

Regardez cette réponse:

Git Bash ne lancera pas mes fichiers python?

le chemin dans Git Bash doit être réglé comme ceci:

PATH=$PATH:/c/Python27/
0
répondu nevernew 2017-05-23 12:10:45

type: "winpty python" et cela fonctionnera

gitbash a quelques problèmes lors de l'exécution de n'importe quelle commande qui commence avec python. ça vaut pour n'importe quel python. manage.py les commandes aussi. Commencez toujours par winpty python manage.py " au moins, c'est ce qui fonctionne pour moi. Exécution De Windows 10.

0
répondu Bryce Regan LeFevre 2018-02-14 19:51:05

J'utilise MINGW64 via Visual Studio Code sur Windows 10 et j'essaie d'installer node-sass (qui nécessite python2 ). J'ai suivi felixrieseberg/windows-construire-les outils #56 sur Github qui a résolu mon problème.

C'est un cas particulier, mais je poste au cas où quelqu'un a le même problème:

npm --add-python-to-path='true' --debug install --global windows-build-tools

cela installe python et d'autres outils de construction nécessaires à %USERPROFILE%\.windows-build-tools\python27 .

0
répondu Blaskovicz 2018-07-24 17:35:43

un autre exemple de ce numéro est L'utilisation de L'interface en ligne de commande élastique AWS (awsebcli, eb cli) de git bash (MINGW64, Mintty) dans windows (en utilisant la version 2.19.0 de git.Windows.1).

je viens de poster ceci parce que ça m'a pris du temps de finir ici, à la recherche de eb-cli questions spécifiques.

les commandes telles que eb init ou eb config save , qui nécessitent une entrée utilisateur, apparaissent pour causer un gel/de blocage. En réalité, je suppose que la console n'est pas mise à jour avec le texte demandant l'entrée de l'utilisateur. De plus, eb deploy ne met à jour le texte de la console qu'après la fin de la commande, de sorte que je ne peux pas voir les mises à jour progress avant la fin.

comme indiqué dans les git for windows release notes (pour v2.19.0) et par exemple dans la réponse de Xun Yang , une solution est d'exécuter

winpty eb <command> (au lieu de eb <command> )

une alternative, comme suggéré dans ce git for windows issue , pourrait être d'utiliser la console Windows native au lieu de mintty (option lors de l'installation git).

0
répondu Dennis 2018-09-19 14:08:52