2009-04-22 1 views
15

私は、bashシェルがあなたのコマンド用のコマンドラインスイッチを提案できることに気付きました。サプライズ!シェルはコマンドラインスイッチを提案します

コマンド、ダッシュ( - )、タイプタブを入力するだけです。シェルは利用可能なスイッチを表示します。例えば

、試してみてください。

[email protected]:~$ java - 

とプレス]タブ - サプライズ!

Screenshot

質問です:

私は、この機能とのインタフェースにはどうすればよいです。つまり、コンソールから実行するプログラムを作成する場合、どのスイッチが利用可能かをシェルに伝えるAPIは何ですか?

+1

私のbash継ぎ目にはこの機能が欠けています。何とかそれを有効にする必要がありますか? – Burkhard

+0

コマンドが/etc/bash_completion.dで使用するように設定されている場合にのみ動作します(以下のMrXの回答を参照してください)。私もlsで試してみましたが、動作しませんでした。 yast2には、私たちのシステムの1つに100行の補完スクリプトがあります。これを設定するLottaの仕事! 多くの人が使っているが、個人的な仕事のためではないUNIXツールを作成しているなら、やってみるのがいいかもしれない。 代わりに、gnuユーティリティで--helpを使用してください。 –

答えて

6

参照:特に

$ man bash 

、FYI "READLINE" とのサブセクション "プログラマブル完了"

5

を題したセクション:Ubuntuと/またはDebianでは、スクリプトが/etc/bash_completion.dであります/