GNU/Linux >> Linux の 問題 >  >> Linux

bash 履歴の完了を変更して、既に進行中の内容を完了するにはどうすればよいですか?

たぶん

# ~/.inputrc
"\e[A": history-search-backward
"\e[B": history-search-forward

または同等の

# ~/.bashrc
if [[ $- == *i* ]]
then
    bind '"\e[A": history-search-backward'
    bind '"\e[B": history-search-forward'
fi

(if ステートメントはインタラクティブ モードをチェックします)

通常、Up と Down は Readline 関数 previous-history にバインドされています。 そして next-history それぞれ。 Up/Down の通常の操作を置き換えるのではなく、PgUp/PgDn をこれらの関数にバインドすることを好みます。

# ~/.inputrc
"\e[5~": history-search-backward
"\e[6~": history-search-forward

~/.inputrc を変更した後 、シェルを再起動するか、Ctrl を使用します +X , Ctrl +R ~/.inputrc を読み直すように指示する .

ところで、関連するドキュメントを探している場合:

Bash は、シェル プロンプトと履歴に GNU Readline ライブラリを使用します。


.inputrc を次のように更新します:

"\C-[OA": history-search-backward
"\C-[[A": history-search-backward

"\C-[OB": history-search-forward
"\C-[[B": history-search-forward

set enable-keypad on の場合 あなたの ~/.inputrc にあります 一部の st (suckless simple terminal) ユーザーは、矢印キーがキーパッド モードであることを認識している可能性があります。 Ubuntu には、この便利な /usr/share/doc/bash/inputrc.arrows が付属しています。 :

# This file controls the behaviour of line input editing for
# programs that use the Gnu Readline library.
#
# Arrow keys in keypad mode
#
"\C-[OD"        backward-char
"\C-[OC"        forward-char
"\C-[OA"        previous-history
"\C-[OB"        next-history
#
# Arrow keys in ANSI mode
#
"\C-[[D"        backward-char
"\C-[[C"        forward-char
"\C-[[A"        previous-history
"\C-[[B"        next-history
#
# Arrow keys in 8 bit keypad mode
#
"\C-M-OD"       backward-char
"\C-M-OC"       forward-char
"\C-M-OA"       previous-history
"\C-M-OB"       next-history
#
# Arrow keys in 8 bit ANSI mode
#
"\C-M-[D"       backward-char
"\C-M-[C"       forward-char
"\C-M-[A"       previous-history
"\C-M-[B"       next-history

したがって、すべてが必要かどうかはわかりませんが、 ~/.inputrc に入れても害はないかもしれません :

# Arrow keys in keypad mode
"\C-[OA": history-search-backward
"\C-[OB": history-search-forward
"\C-[OC": forward-char
"\C-[OD": backward-char

# Arrow keys in ANSI mode
"\C-[[A": history-search-backward
"\C-[[B": history-search-forward
"\C-[[C": forward-char
"\C-[[D": backward-char

これも同じトピックです:カーソルキーが機能しません。また、この xterm:特殊キー


Linux
  1. コマンドラインから使用しているOsXのバージョンを確認するにはどうすればよいですか?

  2. OdとHexdumpのデフォルトの行の長さを変更するにはどうすればよいですか?

  3. Ubuntu でホスト名を変更する方法

  1. Bashを使用してファイルの最後から2番目の行を読み取る方法は?

  2. Bashでの$#の使用は何ですか

  3. ターミナルカーソルをボックスから行に変更するには?

  1. コマンドラインでの毎日のBashのヒント

  2. LinuxでBASHコマンドライン履歴をクリアする方法

  3. Debian VM の Bash の解像度を変更するにはどうすればよいですか?