web-dev-qa-db-ja.com

Ubuntuターミナル、ファイル名window-cmd-style(cycle options)を「タブ」(オートコンプリート)するにはどうすればよいですか?

基本的に私はubuntuターミナルを機能的に変更したいので、タブ(コマンドライン行)ですべてのオプションを循環でき、デフォルトのようにオプションをリストしませんか?

私はbash、ubuntu9.04を使用しています。 「.bashrc」にはいくつかの可能性がありますが、この問題をすでに解決している人がいるはずです。

13

このページ のコメントによると、

bind '"\t":menu-complete'

あなたの.bashrcは周期的なタブ補完を有効にする必要があります。

詳細については、 Bashリファレンスマニュアルセクション8.4.6 を参照してください。

16
las3rjock

私にとって命の恩人である何かは、ばかげたリストを表示する代わりに、可能性をbashで循環させることです。

Bashはオートコンプリートにreadlineを使用しているため、次の行を~/.inputrcに追加します。

満足し、以下のソリューションを数日/週にわたって徹底的にテストしたら、カットアンドペースト(しないでください)コピー!)システム全体の設定を含む~/.inputrcから/etc/inputrcまでの同じ設定で、システム上のすべてのユーザー(ゲストを含む)がこれを利用できるようにします。

Codez:

# mappings to have up and down arrow searching through history:
"\e[A": history-search-backward
"\e[B": history-search-forward
# mappings to have left and right arrow go left and right: 
"\e[C": forward-char
"\e[D": backward-char

# mapping to have [Tab] and [Shift]+[Tab] to cycle through all the possible completions:
"\t": menu-complete
"\e[Z": menu-complete-backward

次に、exit端末(またはPuTTYなどのリモート端末)を開いて、もう一度開きます。

例:

  1. file1file2、およびfile3の3つのファイルがあり、次のように入力した場合:

    e fTabTabTab

    循環します:

    e file1
    e file2
    e file3
    

    戻りたいときは、 Shift+Tab

  2. 入力するとき:

    very-complicated-command with lots of command line parameters
    

    次に同じコマンドが必要になったときは、次のように入力するだけです。

    very

    そしてそれはあなたのためにタイプします:

    very-complicated-command with lots of command line parameters
    

これにより、bashでの時間を大幅に節約できます。 ;-)

ソース

0
Fabby