Ctrl-r を使った履歴のナビゲーションは面倒なので、hh .
を検討してみてはいかがでしょうか。 [ https://github.com/dvorka/hstr ]0x3&
これは、コマンドの実行を含めて、ナビゲーションをよりシンプルに、わかりやすく、効率的にしてくれます。
シェルが vi
キーバインドを使用するように設定されている場合(set -o vi
または set editing-mode vi
に $HOME/.inputrc
が含まれている場合)、<Esc>/some-command<Return>
で検索して n
(next) または Shift-n
(previous) を押すと、コマンドラインの履歴を循環させることができます。
HSTRは好きなのですが、たまにインストールできないことがあります。そこで、 fzf を使ってエイリアスを書いてみました。これはその動作を模倣したものです(hx
, “history execute "を意味します)
alias hx='eval $(history | sed "s/^ *[0-9]* *//g" | fzf --tac --tiebreak=index --height=10)'
history
: まあ、履歴を取得する sed
: リストから数字の列を削除する (POSIX) fzf
: ここに魔法があり、対話的にリストをファジーサーチしたり、C-J
とC-K
で移動したり、Enter
でコマンドを実行したりすることができます。--height
: 表示される行数を設定します。--tac
: リストを元に戻す (履歴としてはより論理的) --tiebreak=index
: fzf が結果を更新したときに履歴の順序を保持する。