また、エイリアスをオートコンプリートする方法もありますか?
承認された回答:
コマンドに応じて:
- 誰かが、オプションを含め、引数の可能な補完を生成する関数を作成した可能性があります。一部のコマンドの関数は、/etc/bash_completion.d/*にあります。 (または一部のシステムでは別の場所)。これらの関数はcompleteに登録されています 組み込み(例:complete -F _find find_findを呼び出すようにbashに指示します Tabを押すと機能しますfindで 指図)。compgenを使用します bashに「可能な補完はここにあります」と伝えるための組み込み。
- 一部のコマンドでは、bashは引数--helpを使用してコマンドを呼び出します。 出力を解析します。このようなコマンドは、completeに登録できます。 ビルトイン、例:complete -F _longopt ls。_longopt実際には、完了生成関数であり、固定リストを使用するのではなく、コマンドの出力を解析します。 (コマンドの出力を解析して可能な補完を生成する、より特殊な補完関数が他にもあります。/etc/bash_completion.d/*を参照してください。 たとえば。)
- エイリアスなどの場合、補完関数はそれらをbashの内部テーブルで検索します。 completeビルトインにはそのためのオプションがあります。-Aエイリアスの場合。