我已經在 SUDO 中啟用了 apt-get,無需密碼,並且還需要啟用 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
。
但是,我不確定為什麼你需要這樣做。在我的系統(自然和夢幻)上,apt-get
無論有沒有sudo
.
答案2
從你的提示看來你正在使用zsh
,是真的嗎?
bash-completion
顧名思義,是 的補全bash
,因此不保證它適用於其他 shell,儘管與 部分兼容bash
。