エイリアスはどのように自動補完されますか?
ベストアンサー1
コマンドによって異なります。
- 誰かオプションを含む可能な引数補完を生成する関数を書くこともできます。
/etc/bash_completion.d/*
一部のコマンドの機能は、(または一部のシステムでは異なる場所で)見つけることができます。この機能は以下に登録されています。complete
組み込み(たとえば、コマンドを押すとcomplete -F _find find
bashにこの関数を呼び出すように指示します。)彼らはそれを使う_find
Tabfind
compgen
組み込み機能はbashに「ここにできるだけ完成しています」と伝えます。 - 一部のコマンドでは、bashは引数を使用してコマンドを呼び出して
--help
出力を解析します。これらのコマンドは次に登録できます。complete
たとえばcomplete -F _longopt ls
。_longopt
実際には、固定リストを使用するのではなく、コマンドの出力を解析する完了生成関数です。 (可能な補完を生成するためにコマンドの出力を解析する、より特殊な他の完成関数があります。/etc/bash_completion.d/*
例を参照してください。) - エイリアスのようなものの場合、補完機能はbashの内部テーブルでそれを見つけます。これ
complete
-A
エイリアスなどの対応するオプションが組み込まれています。