上矢印を使用して前のコマンドを実行するには、どのようなセットアップが必要ですか?Macでは、上矢印キーを使用して、実行したばかりのコマンドを再実行できますが、bashシェルでは機能しないようです。
8.04を使用します(コンパイラーのバージョンの問題により、最新のディストリビューションを使用できません)。
追加されました
Mac上のVMWare Fusionを使用した新規インストールなので、何も変更しませんでした。
上矢印を使用して前のコマンドを実行するには、どのようなセットアップが必要ですか?Macでは、上矢印キーを使用して、実行したばかりのコマンドを再実行できますが、bashシェルでは機能しないようです。
8.04を使用します(コンパイラーのバージョンの問題により、最新のディストリビューションを使用できません)。
Mac上のVMWare Fusionを使用した新規インストールなので、何も変更しませんでした。
回答:
履歴が有効になっていることを確認してください。次のコマンドを実行して、現在のステータスを確認できます。
set -o
出力には以下を含める必要があります(history on
行に注意してください):
histexpand on
history on
ignoreeof off
これが有効になっていない場合は、を実行する必要がありますset -o history
。この変更を永続的にするには、以下に追加する必要があります~/.bashrc
。
set -o history
前のコマンドを実行する場合は、次のコマンドも実行できます。
!!
Event Designators
An event designator is a reference to a command line entry in the history list.
! Start a history substitution, except when followed by a blank, newline,
carriage return, = or ( (when the extglob shell option is
enabled using the shopt builtin).
!n Refer to command line n.
!-n Refer to the current command line minus n.
!! Refer to the previous command. This is a synonym for `!-1'.
!string
Refer to the most recent command starting with string.
!?string[?]
Refer to the most recent command containing string. The trailing ?
may be omitted if string is followed immediately by a newline.
^string1^string2^
Quick substitution. Repeat the last command, replacing string1 with
string2. Equivalent to ``!!:s/string1/string2/'' (see Modifiers below).
!# The entire command line typed so far.
Bashを使用している場合は、デフォルトのショートカットを使用して履歴をナビゲートすることもできます。
Ctrl+ N:次のコマンド
履歴を操作するためのコマンドprevious-history(Cp)履歴リストから前のコマンドを取得し、リスト内に戻ります。next-history(Cn)履歴リストから次のコマンドを取得し、リスト内を前方に移動します。
/etc/inputrc
か~/.inputrc
?また、使用している端末で上下矢印はどのエスケープシーケンスを生成しますか?確認するには、を実行cat
し、空の行で上矢印と下矢印を押し、Ctrl + Cを押してcatを終了します。ここで生成され^[[A^[[B
ます。
ターミナルで次を入力します。
gedit ~/.inputrc
次に、コピーして貼り付けて保存します。
"\e[A": history-search-backward
"\e[B": history-search-forward
"\e[C": forward-char
"\e[D": backward-char
これで、ターミナルでインクリメンタル検索を実行できます。前のコマンドを見つけるために必要なことは、最初の2文字または3文字を入力するだけで、上矢印を押すとすぐに表示されます。