Я включил apt-get в SUDO без пароля, и для него также нужно включить автодополнение bash, но как?
If i try to source that file:
%> . /etc/bash_completion.d/apt
No command 'have' found, did you mean:
Command 'vave' from package 'lipsia' (universe)
Command 'havp' from package 'havp' (universe)
Command 'haxe' from package 'haxe' (universe)
Command 'dave' from package 'libhttp-dav-perl' (universe)
Command 'save' from package 'atfs' (universe)
have: command not found
No command 'have' found, did you mean:
Command 'vave' from package 'lipsia' (universe)
Command 'havp' from package 'havp' (universe)
Command 'haxe' from package 'haxe' (universe)
Command 'dave' from package 'libhttp-dav-perl' (universe)
Command 'save' from package 'atfs' (universe)
have: command not found
решение1
Функция have()
определена в /etc/bash_completion
, поэтому ее невозможно выполнить /etc/bash_completion.d/apt
изолированно.
Я думаю, вам нужно будет выполнить команду
. /etc/bash_completion
и затем он выполнит все скрипты завершения в /etc/bash_completion.d
каталоге.
Однако я не уверен, зачем вам это вообще нужно. На моих системах (natty и oneiric) автодополнение for apt-get
уже работает с sudo
.
решение2
Из вашего запроса следует, что вы используете zsh
, это правда?
bash-completion
, как следует из названия, является дополнением для bash
, поэтому его работа в других оболочках не гарантируется, хотя он частично совместим с bash
.