Windows에서 ghq look했을 때의 쉘을 CMD가 아니고 Bash로 하고 싶다
개요
Windows상에서 ghq를 사용하고 있을 때,
ghq look
그러면 새롭게 cmd 가 일어나 옵니다.평소 cmd로 사용하면 위화감은 없지만,
Git Bash나 Msys2 등 Bash를 사용하고 있는데 이것을 하면 힘들군요.
그래서 어떻게 든
ghq look
에서 bash를 시작할 수 있는지 시도해 보았습니다.ghq look의 움직임
리포지토리의 해당 부분을 확인하면
runtime.GOOS
결과, Windows라면환경 변수
COMSPEC
로부터 터미널의 패스를 취득해 실행하는 처리가 되어 있었습니다.ref : htps : // 기주 b. 이 m / 모멘 / ghq / b / b / bdfc 594 아바 1d514 ~ f8336 에 f3bd07422d0fc444 / 코만 ds. #L305-L314
if runtime.GOOS == "windows" {
cmd := exec.Command(os.Getenv("COMSPEC"))
cmd.Stdin = os.Stdin
cmd.Stdout = os.Stdout
cmd.Stderr = os.Stderr
cmd.Dir = reposFound[0].FullPath
err := cmd.Start()
if err == nil {
cmd.Wait()
os.Exit(0)
시도해 보자.
$ echo $COMSPEC
C:\WINDOWS\system32\cmd.exe
$ echo $SHELL
/usr/bin/bash
과연, 확실히 CMD에의 패스가 들어가 있네요.
덧붙여서이 값, 시스템의 속성에서 환경 변수의 설정 화면에서도 확인할 수 있습니다.
왜냐하면 ghq 에 한해서 이 값을 지정한 후에 실행하면 좋을 것 같습니다.
해결 방법
.bashrc
를 편집하고 ghq 에 아래와 같은 별칭을 붙여 환경 변수를 괴롭히고 표준 터미널을CMD 에서
$SHELL
에 저장되어 있는 것으로 변경한 후 실행하도록 합니다..bashrc
alias ghq='COMSPEC="$SHELL" ghq'
Msys2 등
$SHELL
가 디폴트로 들어오지 않는 환경은 사전에 변수를 세트 해 주세요.
Reference
이 문제에 관하여(Windows에서 ghq look했을 때의 쉘을 CMD가 아니고 Bash로 하고 싶다), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/dojineko/items/3dd4090dee0a02aa1fb4텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)