자식 명령 완료


17

최근에는 지난 7 년간 우분투 상자를 사용하지 않고 Mac으로 전환했습니다. 내가 좋아하는 다른 게시물을 읽고 OS X에 우분투에서 전환을 내가 잃었어요iTerm2 터미널의 차이점은 무엇입니까?

iTerm2와 터미널이 명령에 대한 인수를 완료하지 않는 이유는 무엇입니까?

예 : 내가 gi+ 이면 좋은 Tab단어를 자동 완성합니다 git. 공백을 추가하고 remo+을 시도 할 때 우분투 에서처럼 Tab자동 완성되지 않는 이유는 무엇입니까 remote? 단어 뒤에 모든 것을 수동으로 입력해야합니다 git. 다른 명령에서도 마찬가지입니다.

내가 잘못했거나 뭔가 빠졌습니까?

( iTerm2에서 이전에 입력 한 항목을 자동 완성 하는 cmd+ ;바로 가기 에 대해서는 이야기하지 않습니다 .)


1
터미널과 iTerm2는 명령을 완료하지 않습니다. Linux 및 OSX에서 동일 할 수있는 쉘 및 애드온이므로 Linux에서 전체 설정을 설명하고 OSX에서 복제해야합니다.
user151019

git에 대한 자동 완성을 원합니다 -apple.stackexchange.com/q/55875/24565
Michael Durrant

답변:


11

OS X에서 자동 완성을 얻는 가장 쉬운 방법은 셸을로 전환하는 것 zsh입니다.

zsh위의 스위치를 만들기 전에 iTerm과 터미널에서 실행 하여 테스트 할 수 있습니다 . 정말로 고집하고 싶다면 bash다음 두 가지 질문으로 시작할 수 있습니다.


3
단! zsh는 좋다! bash에서 전환을 방해하지 않았습니다 :). Update:oh-my-zsh와 함께 zsh를 사용하는 것은 놀라운 일입니다.
rgamber

ahhh love oh-my-zsh
Prefix

13

우분투에서 전환 할 때의 해결책 은 Mac OSX의 패키지 관리자 인 homebrew 를 사용 하는 것 입니다. 특히 git에는 bash 완성을 포함한 여러 가지 추가 사항이 포함되어 있습니다. 이는 개발자에게 친숙한 다른 프로그램의 경우에도 마찬가지입니다 make.

2 단계로 :

  1. 함께 설치 ruby -e "$(curl -fsSL https://raw.github.com/Homebrew/homebrew/go/install)"
  2. brew doctor경로를 올바르게 설정하기 위해 실행
  3. git 및 bash 완성 설치 : brew install git bash-completion
  4. 에서 이전 단계에서 return 명령어를 추가하십시오 .bash_profile.
  5. 새 도구 및 구성이 파일 시스템에 기록되면 bash 세션을 다시 시작하십시오.

이 하우투대한 추가 정보 .


3

두 가지 제안이 있습니다.

  1. 물고기를 사용 하면 정말 간단하고 쉽습니다

    ㅏ. oh-my-fish를 사용하여 확장

  2. oh-my-zsh와 zsh. zsh가 이미 설치되어 있으므로 많은 작업을 수행 할 필요가 없습니다.

    ㅏ. chsh -s /bin/zsh

    비. 로그 아웃 후 다시 로그인

    씨. oh-my-zsh를 설치하려면 wget --no-check-certificate https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh -O - | sh여기를 실행하십시오. 자세한 정보는 https://github.com/robbyrussell/oh-my-zsh

나는 사용 oh-my-zsh하지만 fish훌륭합니다.


3

누군가가 Apple에서 제공 한 Git 버전을 시스템에 유지하려는 경우 문제를 다소 회피합니다.

더 짧은 git 명령을 위해 홈 디렉토리의 .gitconfig 파일에 별명을 작성할 수 있습니다. 예를 들어, git 설정되어 있으므로 대신 git st실행 git status됩니다.

.gitconfig의 별칭 예 :

[alias]
    co = checkout
    ci = commit
    st = status
    br = branch

3

도움이 될 수있는 한 가지 옵션 .git-completion.bash은 bash git autocompletion 에 사용하는 것 입니다 .

git 명령을 입력 한 다음 원격 이름 (예 : 'origin'또는 'heroku')에 대한 자동 완성 및 리포지토리 분기 이름에 대한 자동 완성 기능을 사용할 수 있습니다.

/apple//a/55886/24565를 참조 하십시오.

https://github.com/git/git/blob/master/contrib/completion/git-completion.bash 에서 파일을 다운로드
하십시오.


2

zsh + oh-my-zsh만큼 사용하기 쉬운 bash 명령 완료 솔루션을 찾는 사람들에게는 bash-it 프로젝트가 있습니다. 그 자체로 말하면, "oh-my-zsh의 뻔뻔한 찢어짐"입니다. 실제로 아무런 문제가 없습니다!

oh-my-zsh와 같은 아키텍처와 같은 플러그인을 설정하여 환경에서 물건을 쉽게 가져오고 나갈 수 있으며 github 프로젝트와 동기화하여 새로운 것을 얻을 수 있습니다.

간단한 3 단계로 설치 :

  1. 이 저장소의 복제본을 확인하십시오. git clone https://github.com/revans/bash-it.git ~/.bash_it
  2. 실행 ~/.bash_it/install.sh(자동으로 백업 ~/.bash_profile)
  3. ~/.bash_profilebash-it을 사용자 정의하기 위해 파일을 편집하십시오 .

당신이 두려워하는 경우 전체에로 전환 zsh, bash-it당신을 유지하는 좋은 중간입니다 bash하지만 당신과 당신의 환경을 확장 할 수있는 강력한 플러그인을 많이 제공합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.