私はCetnOS 6を使用していますsudo
。
この問題を発見しましたhttps://superuser.com/questions/804128/bash-hints-does-not-work-after-sudo-or-man現在、次の作品を見ることができます:
yu[tab]
完了しyum
て別のタブをクリックすると、他のyumコマンドが提案されます。yum upg[tab]
yum upgrade
必要に応じてオートコンプリートsudo yu[tab]
sudo yum
期待どおりに自動的に完了します。sudo yum upg[tab]
オートコンプリートしない何もアドバイスしません。
sudoを使用してもパラメータの完成をどのように達成できますか?
(yum
これはすべてのCentOSで動作するため、例としてのみ使用しています。結果は他のコマンドでも同じです。)
私のシステムに関するいくつかの情報:
$ uname -a
Linux server 2.6.32-642.6.1.el6.x86_64 #1 SMP Wed Oct 5 00:36:12 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
$ bash --version
GNU bash, version 4.1.2(1)-release (x86_64-redhat-linux-gnu)
$ yum list installed | grep completion
bash-completion.noarch 1:1.3-7.el6 @epel
$ cat .bashrc
# .bashrc
# Source global definitions
if [ -f /etc/bashrc ]; then
. /etc/bashrc
fi
# User specific aliases and functions
complete -cf sudo
答え1
これは完全な回避策ではありませんが、sudoコマンドcomplete -cf sudo
に追加すると.bashrc
自動的に完了します。
しかし、このようにしても何もしません。正確に一般的なタブの完成と同じです。たとえば、それを使用すると、sudo cd [tab]
役に立たない可能性がたくさんあります。つまり、ファイル名が表示されます...誰がファイルにCDを入れたいですか?
ただし、ほとんどの場合、次のコマンドが完了します。sudo yum upd[tab]