터미널에서 자동 완성을 활성화하는 방법

자주 (매일) 사용하는 모든 사람들에게 유용합니다. 단말기 또는 GNU / Linux 시스템의 콘솔.

시작하기 전에

bash-completion 패키지가 설치되어 있지 않은 경우 설치합니다.

적성 설치 bash-completion

모든 사용자에 대해 TTY에서 자동 완성 사용

/ etc / 프로필을 엽니 다

나노 / 기타 / 프로필

/ etc / profile에서 다음 줄을 찾습니다 ...

# 대화 형 쉘에서 bash 완성을 활성화합니다.
#if [-f / etc / bash_completion] &&! shopt -oq posix; 그때
#. / etc / bash_completion
#피

그리고 우리는 다음으로 대체합니다.

if [ "$ BASH"]; 그때
       if [-f / etc / bash_completion] &&! shopt -oq posix; 그때
            . / etc / bash_completion
       fi
fi

후자는 루트를 포함한 모든 사용자에 대해 bash_completion을 활성화합니다. 그러나 터미널 에뮬레이터가 아닌 TTY에서만 활성화됩니다.

우리는 TTY를 재설정하고 그게 다입니다.

보시다시피 원본 파일에 if를 추가하여 Bash에있을 때만 bash_completion이 실행됨을 확인합니다. 이 조건이 없으면 GDM이 bash_completion을 호출하고 어떤 이유로 xsession과 충돌하기 때문에 GDM은 앞서 언급 한 오류를 제공합니다.

모든 사용자에 대해 터미널 에뮬레이터에서 자동 완성을 활성화합니다.

/etc/bash.bashrc를 엽니 다.

# 나노 /etc/bash.bashrc

/etc/bash.bashrc에서 다음 줄을 찾습니다.

# 대화 형 쉘에서 bash 완성을 활성화합니다.
#if [-f / etc / bash_completion] &&! shopt -oq posix; 그때
#. / etc / bash_completion
#피

... 그리고 다음과 같이 "#"을 제거합니다 (주석을 제거합니다).

# 대화 형 쉘에서 bash 완성을 활성화합니다.
if [-f / etc / bash_completion] &&! shopt -oq posix; 그때
    . / etc / bash_completion
fi

후자는 루트를 포함한 모든 사용자에 대해 bash_completion을 활성화합니다. 그러나 TTY가 아닌 터미널 에뮬레이터에서만 활성화됩니다.

모든 터미널을 다시 시작하면 변경 사항이 적용됩니다.

한 사용자에 대해서만 터미널 에뮬레이터에서 자동 완성 사용

~ / .bashrc 파일을 작성 (또는 존재하는 경우 편집)해야합니다.

나노 ~ / .bashrc

다음과 같이 추가 (또는 존재하지 않는 경우 검색하지만 /etc/bash.bashrc에서 수행 한대로 주석 처리)합니다.

# 대화 형 쉘에서 bash 완성을 활성화합니다.
if [-f / etc / bash_completion] &&! shopt -oq posix; 그때
    . / etc / bash_completion
fi

-파일을 생성하면이 줄을 추가하기 만하면됩니다.
-이러한 행이 존재하지만 존재하지 않는 경우 파일 끝에 추가합니다.
-존재하고 이러한 줄이있는 경우 단순히 주석 처리를 제거합니다.

콘솔을 다시 시작하면 변경 사항이 적용됩니다.

원하는 경우 자동 완성 활성화

사용하려는 순간에 bash_completion을 실행하면됩니다. 터미널에서 세션을 종료하거나 (exit 명령을 사용하여) 그래픽 환경에서 사용중인 터미널을 닫으면 비활성화됩니다. 원할 때마다 실행하려면 다음을 수행합니다.

. / etc / bash_completion
감사합니다 Carlos Fioriti!

출처 : 98 노트북


코멘트를 남겨주세요

귀하의 이메일 주소는 공개되지 않습니다. 필수 필드가 표시되어 있습니다 *

*

*

  1. 데이터 책임자 : Miguel Ángel Gatón
  2. 데이터의 목적 : 스팸 제어, 댓글 관리.
  3. 합법성 : 귀하의 동의
  4. 데이터 전달 : 법적 의무에 의한 경우를 제외하고 데이터는 제 XNUMX 자에게 전달되지 않습니다.
  5. 데이터 저장소 : Occentus Networks (EU)에서 호스팅하는 데이터베이스
  6. 권리 : 귀하는 언제든지 귀하의 정보를 제한, 복구 및 삭제할 수 있습니다.

  1.   다니엘

    내 컴퓨터에서 사용자 지정 사용을 위해 자동 완성 명령 프로그램을 다운로드하고 싶습니다.
    또한 최신 모델의 웹 브라우저로 전송하십시오.
    나와 협력 할 수 있습니까?
    감사합니다.