bash_completion이 작동하지 않습니다(일부 명령의 경우)

bash_completion이 작동하지 않습니다(일부 명령의 경우)

Debian Wheezy를 새로 설치했는데 bash_completion일부 명령이 작동하지 않는 것을 발견했습니다. 예를 들어 에서는 작동 ping하지만 에서는 작동하지 않습니다 host( pinghost에서 호스트 이름을 완성해야 함 /etc/hosts).

또한 이전 버전의 Debian(Squeeze)과 달리 bash 완료 설정이 더 이상 별도의 파일로 저장되지 않고 /etc/bash_completion.d대신 /usr/share/bash-completion/bash_completion인프라가 변경된 것으로 보입니다.

명령은 어떻게 작동 bash_completion하나요 ?host

답변1

저는 bash-completion 버전 1.3과 함께 CentOS 5.6을 실행하고 있습니다. 내 /etc/bash_completion을 데비안 2.0 버전과 비교한 후에 해결책이 있을 수 있습니다. 데비안에서는 이것을 테스트할 수 없습니다. 그래서 YMMV입니다.

/etc/bash_completion에서 주석 처리된 _known_hosts_real 줄을 찾으세요(아래 코드 조각은 Debian 파일에서 가져온 것입니다).
다음에 추가주인다음 명령 목록에전체 -F다음 줄에.
그런 다음 *소스 /etc/bash_completion*을 수행합니다.
이것은 내 시스템에서 작동합니다. 다음을 사용하여 바인딩을 표시할 수 있습니다.전체 -p주문하다.

} # _known_hosts_real() done -F _known_hosts Traceroute Traceroute6 Tracepath Tracepath6 \ fping fping6 telnet rsh rlogin ftp dig mtr ssh-installkeys showmount

여기에서 바인딩 정보를 찾았습니다. http://www.debian-administration.org/article/An_introduction_to_bash_completion_part_1.

관련 정보