指示に従うここ、前のコマンドに基づいてシェルに入力した内容を、上矢印と下矢印を使用してオートコンプリートするように.bash_profileで編集しました。
私の.bash_profileに以下を追加しました。
# bind history search to up and down arrows
if [[ $- == *i* ]]
then
bind '"\e[A": history-search-backward'
bind '"\e[B": history-search-forward'
fi
これは素晴らしいですが、探しているコマンドが見つからない場合は、下向き矢印を使用して元のテキストに戻ることを望みます。
たとえば、以前に3つのコマンドがあったとします。
ls -l
ls -al
今、私が入力したものはls
に自動完成ですls -a
。
上矢印をクリックすると(現在の実装を使用して)テキストが自動補完されますls -al
。上矢印をもう一度クリックすると、テキストがオートコンプリートされますls -l
。この時点で私が探しているものが見つかりません。 。下矢印を押すとテキストがに変わりls -al
ますが、下矢印をもう一度押すと何も変わりません。ls
履歴の最新のコマンドに達したら、下矢印を押して元のテキストに戻りたいです(この場合)。
誰かが私を助けるか、正しい方向に私を指すことができたら、非常に感謝します。
ありがとうございます!
答え1
Ctrl+K
カーソルから行末までのテキストが削除されます。したがって、カーソルを移動しないと、元のCtrl+K
テキストが提供されます(つまり、効果的に復元されます)。