Windows 컴퓨터에서 작업 중이며 Git과 함께 제공되는 bash 쉘을 사용합니다. 그러나이 버전의 bash 쉘에는 많은 유틸리티가 없습니다.
이 쉘에 더 많은 명령을 어떻게 설치할 수 있습니까?
many utilities are missing in this version of bash shell
. 사용하고 싶지 않은 명령을 추가하십시오.
Windows 컴퓨터에서 작업 중이며 Git과 함께 제공되는 bash 쉘을 사용합니다. 그러나이 버전의 bash 쉘에는 많은 유틸리티가 없습니다.
이 쉘에 더 많은 명령을 어떻게 설치할 수 있습니까?
many utilities are missing in this version of bash shell
. 사용하고 싶지 않은 명령을 추가하십시오.
답변:
사용할 Git에는 msysgit 배포판 또는 Cygwin의 두 가지 버전이 있습니다 .
Cygwin 설치 (Cygwin을 사용한 경우)의 일부로 Git 만 설치했을 수도 있지만 Cygwin에는 setup.exe 라는 프로그램이있어 패키지를 추가 할 수 있습니다. 기본적으로 패키지 선택 창에 setup.exe
도달 할 때 어떤 프로그램을 설치하고 실행 하기 만하면 됩니다. 여기 소개 는 프로세스를 자세히 설명하는 이미지와 함께 좋은 개요를 제공합니다.
Cygwin의 설치 관리자는 기존 설치가 있는지 알아낼 수있을 정도로 똑똑하며 설치를 취소하고 다시 시작하는 대신 패키지를 설치에 추가합니다.
아마도 Cygwin이 아닌 다른 버전의 Git은 msysgit입니다. msysgit은 MinGW와 실제로 호환되지 않는 최소 Unix 환경을 설치하기 때문에 msysgit 옆에 MinGW 제품군을 설치해야합니다. MinGW 시작하기 페이지는 MinGW 설치 방법에 대한 자세한 개요를 제공합니다. 개인적으로 MinGW에 대한 경험이 없기 때문에 실제로 할 수있는 것은 지침을 참조하는 것입니다.
그런 다음 msysgit 설치를 MinGW로 마이그레이션해야합니다. 이것은 ( 여기 에서 가져온 ) 다음을 수행하여 수행 할 수 있습니다 . 다음 순서가 완료되면 MinGW가 Git 설치를 찾아야합니다.
cd GITDIR # Where GITDIR is wherever inside Program Files you put Git
cp bin/git* /MINGW/bin # Where MINGW is wherever you put MinGW
cp -r libexec/git* /MINGW/libexec
cp -r share/git* /MINGW/share
uname -o
bash 터미널에서 실행 하여 설치 한 내용을 알 수 있습니다 .
최근 Windows 용 Git 설치에서는 추가 셸 스크립트 및 프로그램을 설치하는 것이 매우 쉽습니다.
내가 사용하는 자식을 설치하는 것이 좋습니다 chocolatey을 choco install git
당신이 자식 (및 chocolatey에 설치된 모든 다른 도구) 실행하여 업데이트 할 수 있기 때문에 choco upgrade all
.
실행 파일을 C:\Program Files\Git\usr\bin
( %ProgramFiles%\Git\usr\bin
)에 넣으십시오 .
파일 복사 자식 신선한 에를 C:\Program Files\Git\usr\bin
.
src/
로C:\Program Files\Git\usr\bin
https://gist.github.com/evanwill/0207876c3243bbb6863e65ec5dc3f058Wget, Hugo, Xpdf, make, Nano
에서 추가 Unix 단위 를 다운로드 할 수 있습니다 .
wget64.exe
에 wget.exe
필요한 경우.wget.exe
하십시오 Git\mingw64\bin\
.참고 : Git Bash에서 Wget을 사용하여 WARC 파일을 만들 때 몇 가지 버그가 발견되었습니다. Wget을 더 복잡하게 사용하려면 Cygwin을 대신 고려하십시오 .
Hugo 정적 사이트 생성기는 바이너리로 다운로드 할 수 있으며 설치 프로그램이 없습니다. 그것을 bin
당신의 Git Bash 경로에 쉽게 추가합니다. 릴리스 페이지 에서 Windows 64 비트 버전을 가져옵니다 . 다운로드 압축을 푼 다음 디렉토리에 복사 hugo.exe
하십시오 Git\mingw64\bin
.
Xpdf 는 PDF 파일 조작을위한 편리한 유틸리티입니다.
xpdf-tools-win-4.00\bin64\
하십시오 Git\mingw64\bin\
.pdftotext
과 pdftopng
.make-4.1-2-without-guile-w32-bin.zip
(길이없는 버전을 구하십시오).Git\mingw64\
폴더를 병합 할 때 내용을 복사 하되 기존 파일을 덮어 쓰거나 바꾸지 마십시오.2018 년 현재 Git Bash의 최신 버전에는 Nano가 포함되어 있으므로 불필요합니다!
.exe
파일 이름 만 있으면 됩니다 nano-git-0d9a7347243.exe
.nano.exe
복사하십시오 mingw64\bin
.winpty
예를 들어을 사용하여 호출 할 수 있습니다 winpty nano test.txt
.오늘 일한 꽤 간단한 답변을 찾았습니다 rsync
.
rsync
에서 다운로드 *C:\rsync-3.1.2-2-x86_64.pkg
나는 futureware.at 뒤에 누가 있는지 모르겠다. 나는 더 많은 주요 소스에 링크하는 것을 선호한다.
다음을 시도하고 emacs를 git-bash에 설치했습니다. 1. msys2를 어딘가에 설치하십시오 (같은 컴퓨터 일 필요는 없음). 2. msys2에서 다음을 실행하십시오.
cd /tmp mkdir -p var/lib cp -R /var/lib/pacman var/lib/ pacman -Sr /tmp emacs tar zcf emacs.tar.gz usr
emacs.tar.gz
git-bash에서 액세스 할 수있는 위치로 복사 한 다음 git-bash 아래로 복사하십시오 .tar zxf emacs.tar.gz -C / emacs
그게 다야, 행운을 빌어
첫 번째 게시물 후에 다른 컴퓨터를 사용해 보았지만 작동하지 않았습니다. git-bash에 일부 dll이 누락되어 있습니다. 그런 다음 깨끗한 가상 머신에서 다음 단계를 테스트했습니다.
msys2를 업데이트하고 msys64 콘솔을 열고 다음을 실행하십시오.
pacman -Syyu
프롬프트가 표시되면 msys64 콘솔을 닫은 후 위 명령을 다시 실행하십시오.
이전 단계로 emacs 파일을 가져옵니다 (msys64에서 다음을 실행).
cd /tmp
mkdir -p var/lib
cp -R /var/lib/pacman var/lib/
pacman -Sr /tmp emacs
tar zcf emacs.tar.gz usr
mv emacs.tar.gz /c/tmp
추신 : 한 번 / tmp 대신 / d / tmp에서 위의 단계를 시도했지만 emacs를 설치할 수 없었습니다.
git-bash를 열고 emacs 파일을 추출하십시오 :
cd /c/tmp
tar zxf emacs.tar.gz -C /
공유 라이브러리 "?"가 누락되었다고 불평합니다. 지금 이맥스를 실행하려고합니다. "?" 읽을 수있는 공개되지 않습니다
msys64로 돌아가서 msys2 dll을 얻습니다.
ls --color=never /bin/*.dll > /c/tmp/1.txt
git-bash에서 dll과 msys를 비교하십시오.
cd /c/tmp
git init
git add 1.txt && git commit
ls --color=never /bin/*.dll | sed 's#\*$##g' > /c/tmp/1.txt
git diff 1.txt | grep '^-' | sed '1d' | sed 's#^-/bin/##g' > diff_dlls.txt
제 경우에는 diff_dlls.txt에 26 개의 dll이 있습니다.
dll을 msys64에서 git-bash로 복사하십시오.
msys64에서 :
mkdir /c/tmp/dlls
cat /c/tmp/diff_dlls.txt | xargs -I {} cp /bin/{} /c/tmp/dlls
git-bash에서 :
cp /c/tmp/dlls/* /bin
모든 작업이 완료되었습니다. 이제 emacs는 git-bash에서 실행됩니다. 26 개의 dll 중 일부는 필요하지 않을 수도 있지만 디스크 공간 대신 시간을 절약하고 싶습니다.
Windows 용 Git bash (MinGW64)를 사용하는 경우 rsync를 추가하기가 매우 어려웠습니다. 오류가 계속 발생했습니다 : dup () 입력 / 출력 / 오류 실패
대신 Cygwin을 사용하면 결국 효과가있었습니다.
Windows 용 Gitbash에서 rysnc를 사용하는 단계
Windows-> 시스템-> 고급 설정-> 환경 변수
C : \ cygwin64 \ bin \에 대한 경로 추가
*** 치명적인 오류-cygheap 기본 불일치 감지
스크립트를 작성하여 git-bash의 기능 수를 확장하고 ~/.bash_profile
파일 에서 정의하여 호출 할 수 있습니다.
예
watch
명령 을 사용하려면 이 스크립트를 다음에 추가 할 수 있습니다 ~/.bash_profile
.
https://gist.github.com/espaciomore/28e24ce4f91177c0964f4f67bb5c5fda
ARGS="${@}" clear; while(true); do OUTPUT=`$ARGS` clear echo -e "${OUTPUT[@]}" done
함수 안에 넣습니다.
watch() {
ARGS="${@}"
clear;
while(true); do
OUTPUT=`$ARGS`
clear
echo -e "${OUTPUT[@]}"
done
}
파일을 저장하고 실행하자마자 source ~/.bash_profile
명령의 출력을 볼 수 있어야합니다.
하단에 "윈도우 SDK에 대한 힘내"(스크롤을 설치 https://gitforwindows.org/ 에서 그것을 설치 프로그램을 다운로드 할 수있는 링크를 제공 https://github.com/git-for-windows/build-extra/releases / latest )
https://stackoverflow.com/questions/32712133/package-management-in-git-for-windows/52105321#52105321
rsync
mysys 에서 직접 rsync 파일을 다운로드 할 수 있습니다 . rsync에 대한 페이지를 검색하고 최신 날짜 / 최신 버전 번호가있는 페이지를 선택하십시오.
다음을 통해이 파일의 압축을 풉니 다 ( rsync-3.1.3-1-x86_64.pkg.tar.xz
).
tar -xf rsync-3.1.3-1-x86_64.pkg.tar.xz
그런 다음 rsync at를 복사 ./usr/bin/rsync.exe
하여 Git 설치의 / usr / bin 폴더에 붙여 넣습니다.
내 컴퓨터에서C:/Program Files/Git/usr/bin/
다음을 통해 Git 설치 위치를 확인할 수 있습니다
where git
다음은 rsync https://gist.github.com/hisplan/ee54e48f17b92c6609ac16f83073dde6 의 3.1.3-1 버전에 대한 링크와 함께 지침이있는 hisplan의 요지 리포지토리입니다 .
참고 : rsync-3.1.3-1-x86_64.pkg.tar.xz
권한이 허용하지 않기 때문에 파일을 Git 폴더에 직접 압축을 풀 수 없습니다 . 그리고 Git Bash에는 sudo가 없습니다.
그러나 문제없이 다운로드 폴더에 직접 압축을 풀 수 있습니다. 어쨌든 파일
만 필요하기 때문에 마찬가지 rsync.exe
입니다.