SSHセッションでのBashオートコンプリート


9

SSHからマシンにログインしているとき、bashはコマンドをオートコンプリートしたくないようです(今のところ私を困らせているのはapt-getのオートコンプリートではありません)。bashがsshセッション内でオートコンプリートできるようにする設定はありますか?

回答:


7

つまりsource /etc/bash_completion、トリックを実行する必要があります(SSHセッション内のシェルで実行してください)。

長い話:bash補完をbash機能させるには、各コマンドの引数を補完する方法を伝える必要があります。これには、bash組み込みコマンドの呼び出しの長いシーケンスが必要completeです。したがって、それらは通常、/etc/bash.complete.d/*すべてをロードする個別のスクリプト(またはのいくつかのスクリプト)に収集されます。

通常のシェルスクリプトなので、いつでも読み込むことができますbash_completion任意のシェルで起動スクリプト~/.bash_profile~/.bash_login~/.bashrc

参考文献:

  • manページのセクションProgrammable Completionbash(1)
  • completeコマンドのヘルプテキスト(実行:help completein bash

すばらしいです。なぜこれをしなければならないのか説明できますか?SSHセッションでは、bashはオートコンプリートとは異なりますか?これをすべてのsshセッションで実行する方法はありますか?少なくとも特定のユーザー(私)にとっては?
Falmarri

@Falmarriが回答を更新し、詳細を示しました。これはあなたのさらなる質問に答えますか?
Riccardo Murri

ああ、それは理にかなっている
ファルマリ
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.