2016-10-14 13 views
0

通常、端末のtabキーを押すことでbash補完と対話します。私は私のスクリプトの中でそれとやり取りしたいと思います。本質的には、私は、入力したテキストxyzと位置nとしてカーソルtabを押した場合、どのような提案ですか?スクリプトからの完了bashタブ補完

この機能はありますか?私はcompgenを見つけましたが、それは文書化されておらず、私が望むことをしていないようです。

答えて

0

compgenは、とにかく使いたいと思われるとおりです。あなたがcomを入力してTABキーを押すことだろう場合に何が起こるかを表示するには、使用:

compgen -c com 

または:見つかり外部バイナリとスクリプトと一緒に

compgen -A command com 

この意志の出力は、すべてのバッシュの組み込みコマンドPATH

たとえば、compgenの出力からすべてのBash組み込み関数を取り出し、外部バイナリ/スクリプトのみを表示したい場合は、the documentationから詳細を見つけることができます。

+1

これは機能していないようです。 'git sta 'と入力すると、 'stage'、' stash'、 'status'の3つの提案が得られます。しかし、 'compgen -c 'git sta''を実行すると、私は何の提案も得られません。 – Drew

+0

さて、バット補完でgitサブコマンドの補完をしているわけではないので、うまく動作するようには決してうまくいきません。しかし、compgen *は、Bashが生成するものを生成します。 –

+0

次に、gitサブコマンドの完了は何ですか? – Drew

関連する問題