考えられる解決策/トリック

考えられる解決策/トリック

Ctrl私はかなり長いbashレコードを保持しており、時にはbashインバース機能(+)を使用して何かを検索すると、最終的にr検索履歴の先頭にありますが、まだ必要なものが見つからず、次のことをしたいと思います。最後に履歴ファイルに戻ります。 1つのオプションは、履歴または実行の終わりに近い順方向検索機能(Ctrl+)を使用することです。しかし、bashレコードの終わりに直接移動できるキーボードショートカットもありますか?s#

ベストアンサー1

デフォルトでは -end-of-historyにマップされるreadline機能がありますが、リバース検索中に使用されると、リバース検索プロンプトを終了します。M>

考えられる解決策/トリック

文字列検索の開始

代わりにリバース検索を使用するには、history-search-backwardhistory-search-forwardデフォルトではマッピングされていません)を使用してup/down(非常に便利です)マッピングできます.inputrc

# up-down arrow to search in history
"\e[A":history-search-backward
"\e[B":history-search-forward

そのため、入力後(+のup 代わりに)を押すと戻ることができ、履歴の終わりに戻るには(-)を押してその機能を使用できます。CtrlRend-of-historyM>

この方法「検索文字列は履歴行の先頭に一致する必要があります。「それで検索するときは、入力してからキーを押す必要があります  ls -ltrlsup

部分文字列の検索

欲しいなら」検索文字列は、履歴行のどこにでも一致できます。history-substring-search-forward 「次を使用する必要がありますhistory-substring-search-backward

# up-down arrow to search in history
"\e[A":history-substring-search-backward
"\e[B":history-substring-search-forward

このように検索するとls -ltrを入力できますが、を押す前に入力することもlsできます。ltrup

引用:Bashリファレンスマニュアル – コマンド履歴

おすすめ記事