programing

Python이 git bash 명령줄에서 작동하지 않음

copyandpastes 2023. 1. 2. 23:12
반응형

Python이 git bash 명령줄에서 작동하지 않음

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

...프롬프트로 돌아가지 않고 그곳으로 이동합니다.

임시 해결 방법

만 하면 > > > > > > > > > > > > > > > > > > > > > > > > > > > >alias python='winpty python.exe'비단뱀이 에일리어스는 셸 세션 기간 동안 유효합니다.

winpty는 Windows 콘솔프로그램과 통신하기 위한 Unix pty-master와 유사한 인터페이스를 제공하는 Windows 소프트웨어 패키지입니다.

항구적 솔루션

를 추가해 주세요..bashrc사용자의 홈디렉토리에 있습니다.CLI cli cli cli 、 [ CLI ]

CLI 사용

이것은 다음과 같이 git bash에서 실행할 수 있습니다.

echo "alias python='winpty python.exe'" >> ~/.bashrc

★★★★★★★★★★★★★★★★..bashrc하지 않는 에일리어스를 에일리어스를 끝에 합니다..bashrc만약 그렇다면.

텍스트 편집기 사용

'하다, 하다, 하다'를 ..bashrc매니저에 과 같이 bash로 할 수

cd ~
touch .bashrc

열 수 ..bashrc원하는 텍스트 편집기에서 추가하고 여기에 추가합니다.

중 합니다.source .bashrc또는 셸을 재시작합니다.

응답 목록에 다음 옵션이 표시되지 않지만 "-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.
>>> 

이것은 Git Bash에서 사용하는 단말기를 제공하는 MSys2의 알려진 버그입니다.ncurses 지원 없이 Python 빌드를 실행하거나 다음과 같이 사용되는 WinPTY를 사용하여 이 문제를 해결할 수 있습니다.

Windows 콘솔 프로그램을 mintty 또는 Cygwin sshd로 실행하려면 콘솔 앞에 추가합니다.명령줄에 exexe

$ 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()

msys용 프리빌트 바이너리는 Git Bash에서 동작할 가능성이 있습니다.(이 답변이 게시된 지 상당한 시간이 지난 경우 최신 버전이 있는지 확인하십시오!)


2에서는 Git for Windows 2.7.1을 .winpty c:Python27/python.exe; 할 수 WinPTY는 WinPTY를 사용합니다.

저는 Windows 10 사용자이며, 기본 설정만 받아들여 시스템에 GIT를 설치했습니다.

위의 답변을 읽은 후, 저는 2개의 솔루션을 얻었고, 이 2개의 솔루션은 GIT bash에서 완벽하게 작동하며 GIT bash에서 Python 스테이트먼트를 실행할 수 있도록 도와줍니다.

GIT bash 단말기 이미지 3장을 첨부합니다.첫 번째 문제, 두 번째 문제 해결 방법.

문제 - 커서를 누른 후 바로 대기하고 있습니다.python

여기에 이미지 설명 입력

솔루션 1

★★winpty <path-to-python-installation-dir>/python.exeGIT bash 터미널에 있습니다.

주의: 사용하지 마십시오.C:\Users\AdminGIT bash 경로 스타일처럼 대신 사용/C/Users/Admin.

★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★.winpty /C/Users/SJV/Anaconda2/python.exeGIT bash 명령어

또는 사용자 이름을 모를 경우 다음을 수행합니다.winpty /C/Users/$USERNAME/Anaconda2/python.exe

여기에 이미지 설명 입력

솔루션 2

냥냥 just just just just라고 치면 돼요.python -i게게예예예

여기에 이미지 설명 입력

감사해요.

★★를 해 보세요.python -ipython커서 같은 거야

Git Bash 회피책 - Python 2 & Python 3 에일리어스를 붙여 기동합니다.

안녕하세요. 이것은 Git Bash에서 직접 Python(Python 2.7과 Python 3.x)을 실행하는 데 가장 적합한 솔루션입니다. Win 10 = >에서 Git Bash가 사용하는 에일리어스 파일에 에일리어스를 추가합니다.

Git Bash 에일리어스 파일은 aliases.sh 입니다.다음 위치에 있습니다.

C:\path where you installed Git\etc\profile.d\aliases.sh

1) Atom 등의 텍스트에디터로 에일리어스를 엽니다.

ex: 내 경우 파일은 C:\Software\Develop\Git\etc\profile.d\aliases.sh

2) Python 에일리어스를 추가합니다.

저 같은 경우에는python.exe는 다음 위치에 설치됩니다.

C:\Networking\Network Automation\Python 2.7\python.exe
C:\Networking\Network Automation\Python 3.7\python.exe

따라서 2개의 에일리어스를 작성해야 합니다.하나Python2용으로, 다른 하나Python3용으로 작성해야 합니다.Git Bash는 Linux 파일 구조를 사용하기 때문에 "/"에 대해 ""를 변경해야 하며, 예를 들어 네트워크 자동화"와 같은 경로가 있으면 ""와 함께 넣습니다.

예를 들어 "네트워크 자동화"Network Automation")

winpty는 실행 파일을 호출하는 매직명령어입니다.

행들을 에일리어스의 선두에 추가합니다.

alias python2='winpty C/Networking/"Network Automation"/"Python 2.7"/python.exe'
alias python='winpty C/Networking/"Network Automation"/"Python 3.7"/python.exe'

3) 기타 에일리어스 추가 또는 변경 (필요한 경우)

또한 모든 파일과 사람이 읽을 수 있는 목록에 표시되도록 ll 별칭을 수정했습니다.

alias ll='ls -lah'

4) 에일리어스를 저장합니다.sh 파일


5) OK!!Git Bash를 닫고 다시 시작합니다.

이제, 쓰기만 하면 Git 쉘에서 Python을 직접 시작할 수 있습니다.

$ python -> Python 3 를 합니다.

$ python2 -> Python 2 를 합니다.

$ ll는 ls 합니다.-> ls -lah는 ls -lah로 입력합니다.

건배, 해리

@Charles-Duffy char @ @를를운다 / 운운운운ptptptptptptptptptptptptptptpt winpty / @ @ @ @ @ @ @ @ @ @ @ @ 。 뛰어!winpty c:/Python27/python.exe윈티exe Git \usr \ bin exe exe exe exe exe 。1 Git for Windows v2.7.1 을 1 1 1 1 。

@Charles-Duffy에서 미리 빌드된 바이너리는 버전 0.1.1(파일명에 따라)이며 포함된 바이너리는 0.2.2입니다.

솔루션이 아닌 2가지 회피책:Git Bash에서 다음 명령어가 정지되어 프롬프트가 반환되지 않습니다.

% python

그래서 저는 다음과 같이 사용합니다.

% winpty python

위에서 설명한 바와 같이 다음을 사용할 수도 있습니다.

% python -i

2020-07-14: Git 2.27.0은 의사 콘솔에 대한 선택적 실험 지원을 추가하였습니다. 이 기능을 통해 명령줄에서 Python을 실행할 수 있습니다.

첨부된 여기에 이미지 설명 입력세션을 참조하십시오.

입력: 'winpty python'으로 동작합니다.

gitbash는 python으로 시작하는 명령어를 실행할 때 몇 가지 문제가 있습니다.이것은 모든 python 관리에도 해당됩니다.py 명령도 사용할 수 있습니다.항상 'winpty python manage'로 시작합니다.적어도 이게 나한테는 효과가 있어.Windows 10을 실행하고 있다.

다음 위치에서 Git Bash 바로 가기 대상을 변경할 수 있습니다.

"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

이것은 ConEmu가 git bash(버전 16)를 시작할 때 사용했던 방법입니다.최근 버전에서는 정상적으로 시작되었고, 그렇게 해서 제가...

@Vitaly Terziev 답변 외에

해보다touch .bash_profile이치노

하여 MINGW64를 , Windows 10 Visual Studio Code의 MINGW64를 설치하려고 .node-sass합니다).python2). Github에서 filixrieseberg/windows-build-tools #56을 팔로우하면 문제가 해결되었습니다.

이것은 특별한 경우입니다만, 같은 문제를 안고 있는 사람이 있을 경우에 대비해 투고합니다.

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

및 가 python에 됩니다.%USERPROFILE%\.windows-build-tools\python27.

기본 단말기로 gitbash를 사용하는 vcode의 python 버전 3.7.3에 대해 잠시 다루다가 .bashrc에 에일리어스를 추가하라는 @Vitaly Terziev의 조언을 따랐지만 다음 사양으로 되어 있습니다.

별칭 python='/c/Users/my 사용자 이름/AppData/Local/Programs/Python/Python37/python.exe'

"my user name" 공백으로 인해 작은따옴표와 큰따옴표가 조합되어 있습니다.

"winpty"는 vscode에서 파이썬 경로를 해결할 수 없었습니다.

Python 대신 PY 명령을 입력합니다.인터프리터 호출(python.org).

오래된 투고인 것은 알지만, Python 3.8.5와 Git 2.28.0.windows.1을 실행하고 있는 Windows 10에서 이 문제를 발견했습니다.

Python의 2.7x 버전도 몇 개 설치했습니다.Python의 모든 버전(3x와 2x)을 삭제하고, 여기에서 정식 설치 프로그램을 다운로드하여, Python 3.8.5를 설치한 3.8.5를 새로 설치했습니다(기본값만 사용).

C:\Users\(내 사용자 이름)\AppData\로컬\프로그램\Python\Python38

그럼 명령어를 얻으려면pythongit bash 쉘에서 작업하기 위해 수동으로 경로를 추가해야 했습니다.Python38여기에 나와 있는 지시에 따라 내 경로 변수로 이동합니다.이것이 중요한 이유는 첫 번째 모달 하단에 있는 python instra에서 python 경로를 추가할지 여부를 묻기 때문입니다.PATH환경 변수입니다.되지 않았기 .PATH환경 변수입니다.

하고 "gitbash" python을 입력하면 .python theScriptName.py동작도 문제 없습니다.

python 스크립트를 실행할 수 있도록 gitbash 쉘을 얻기 위해 필요한 것은 이것뿐이기 때문에 이 글을 올리고 싶었습니다.업데이트가 있을 수 있기 때문에 여기에 나와 있는 다른 솔루션은 필요하지 않았습니다.어쨌든, Windows 10 머신의 gitbash 쉘에서 python 스크립트를 실행하는 데 문제가 있다면, 이것은 또 다른 시도입니다.

즐거운 시간 되세요.

이 문제의 또 다른 예는 윈도(git 버전 2.19.0.windows.1 사용)에서 git bash(MINGW64, Mintty)의 AWS Elastic Beanstalk 명령줄 인터페이스(awsebcli, eb cli)를 사용하는 것입니다.

이 좀 걸려서 .eb-cli특정 문제

as as commands eb init ★★★★★★★★★★★★★★★★★」eb config save사용자의 입력이 필요한 경우, 프리즈/행업의 원인이 되는 것 같습니다.실제로는 사용자 입력을 요구하는 텍스트로 콘솔이 업데이트되지 않은 것 같습니다.게다가.eb deploy명령어가 완료된 후에만 콘솔텍스트가 갱신되므로 완료될 때까지 진척상황 갱신이 표시되지 않습니다.

Windows 릴리즈 노트용 git (v2.19.0용)및 예를 들어 Xun Yang의 답변에서 설명한 바와 같이 회피책은 실행입니다.

winpty eb <command>의)eb <command>)

이 git for window 문제에서 제안된 대안으로 mintty(git 설치 시 옵션) 대신 window native console을 사용하는 것이 있습니다.

위의 훌륭한 답변에서 앞서 언급한 바와 같이, 다음과 같은 에일리어스입니다(나는 아나콘다를 사용하고 있으므로, 먼저 python 패스가 어디에 있는지 찾은 후 git bash의 에일리어스에 추가합니다).1. 아나콘다 터미널에서 실행:where python: 2. git bash 실행 :alias python='winpty "C:\ProgramData\Anaconda3\envs\your_env_name\python.exe"'.3 에일리어스를 됩니다.Python git Git Bash 。

(Vitaly Terziev & hygull)의 매우 도움이 되는 답변에 감사드립니다.

  1. python.exe -i는 동작하지만, 「^Z」(CTRL+Z)를 송신하고, 인터랙티브모드를 종료할 때에 문제가 발생했습니다.때문에 이렇게 하는 것이 것 요.winpty python.exeWindows ® Git Bash for Windows

  2. ~/bin 파일을 예: "/"/" 참조 파일~/bin/python수 버전 할 수 있습니다~/bin/python37
    [ ] [ 일 、 [ 。

#!/usr/bin/env bash
# maybe declare env vars here like
# export PYTHONHOME=/c/Users/%USERNAME%/.python/Python36
# export PATH="${PATH}:/c/Users/%USERNAME%/.python/Python36"

# replace %USERNAME%,
# or use "~" instead of "/c/Users/%USERNAME%" if it works
winpty /c/Users/%USERNAME%/.python/Python36/python.exe ${@}

저는 그저 여러분이 항상 어디서 왔는지 잊어버리고 경우에 따라서는 문제를 일으키는 이러한 "마법의" 가명이 싫을 뿐입니다.

  1. ~/bin/python 및 "파일"-i★★★★★★★★★★★★★★★★★★:
#!/usr/bin/env bash
if [ -z "${@}" ]; then
    # empty args, use interactive mode
    /c/Users/%USERNAME%/.python/Python36/python.exe -i
else
    /c/Users/%USERNAME%/.python/Python36/python.exe ${@}
fi

때 레코드가 Windows PowerShell이라는 에 추가됩니다.$error.

.$error변수를 사용하여 동일한 PowerShell 세션에서 오류를 찾을 수 있습니다.

$Error에 변수에는 정보 모음을 사용할 수 $Error[0]에러 메시지 오브젝트에 액세스 할 수 있습니다., ,,$Error[0]변수는 PowerShell 세션이 끝날 때까지 마지막으로 발생한 오류 메시지를 유지합니다.

이 답을 보세요.

Git Bash가 내 Python 파일을 실행하지 않는다고?

Git Bash의 경로는 다음과 같이 설정해야 합니다.

PATH=$PATH:/c/Python27/

언급URL : https://stackoverflow.com/questions/32597209/python-not-working-in-the-command-line-of-git-bash

반응형