🖥

シェル — 最後に実行したコマンドを再実行する ( !! )

2023/08/26に公開

答え

タイトルの通り !! で可能

なんと呼ぶ?

「ダブルバン」とか。

(和風が好きなら「にじゅうびっくり」でも良い)

現在時刻を表示する

$ date +%s
1535343779

次に !! で再実行する

$ !!
date +%s
1535343781

コマンドが再実行され、時刻が進んでいるのが分かる。

結果だけではなく、
「コマンド内容」と「結果」があわせて表示されようだ。

次に矢印キーなどでコマンド履歴を戻ると
!! ではなく、再実行後のコマンドが出てくるのが分かる

$ date +%s!

数指定

!-数字 という記法で、何個前の履歴を再実行するかを選べる。

例として、まずは三個のコマンドを実行しておく

$ echo Alice
Alice
$ echo Bob
Bob
$ echo Carol
Carol

ここで二個前のコマンドを再実行する

$ !-2
echo Bob
Bob

もういちど「二個前のコマンド」を再実行する

ここでは、二個前に実行したのは echo Carol になる (繰り上がり)

$ !-2
echo Carol
Carol

Versions

  • sh 3.2
  • bash 4.4
  • Docker version 18.03.1-ce, build 9ee9f40
  • Mac OS X High Sierra

Ref

チャットメンバー募集

何か質問、悩み事、相談などあればLINEオープンチャットもご利用ください。

https://line.me/ti/g2/eEPltQ6Tzh3pYAZV8JXKZqc7PJ6L0rpm573dcQ

Twitter

https://twitter.com/YumaInaura

公開日時

2018-08-27

Discussion