webdevqa.jp.net

履歴の途中にいるときに、履歴の最初/最新のコマンドに移動する

私がbashターミナルにいて、コマンドの大きな歴史があるとしましょう。私は何度も上矢印を押して、歴史の「真ん中」にいます。履歴の最初または最後のコマンドにすばやく移動したいと思います(上矢印または下矢印を長時間押し続けることはありません)。これは可能ですか?もしそうなら、これを達成するためのショートカットキーは何ですか?

53
madiyaan damha

manページ を見てください:

man bash

ここで私はあなたが探していたものをあなたのためにコピーしました:

previous-history (C-p)
    Fetch the previous command from the history list, moving back in the list.  
next-history (C-n)
    Fetch the next command from the history list, moving forward in the list.  
beginning-of-history (M-<)
    Move to the first line in the history.  
end-of-history (M->)
    Move to the end of the input history, i.e., the line currently being entered.
70
kokosing

ターミナルの設定方法にもよりますが、通常は次のことができます。 Ctrl+C 最初に戻って(コメントなし)、1〜2回上に移動して、必要な最近のコマンドに移動します。

または、historyコマンドを使用すると、それらに関連付けられたインデックス値で使用された最近のすべてのコマンドが一覧表示されます。 !#ここで、#はインデックス番号であり、そのコマンドを再実行します。コマンドhistory | grep [command]には、履歴内の特定のコマンドを見つけようとする便利な機能があります。

13
Anthony