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.
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.
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.
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.
>>>
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
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
SOLUTION 2
Merci.
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
en plus de la réponse de @ Vitaliy Terziev
essayer touch .bash_profile
, puis ajouter un alias dans le fichier.
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à...
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/
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.
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
.
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).