コマンドを再実行することはわかっています!!
が、コマンド内に変数が含まれるコマンドを再実行すると、具体的に何が起こるのでしょうか?
答え1
さて、試してみましょう:
$ foo=bar
$ echo $foo
bar
$ foo=qux
$ !-2
echo $foo
qux
$ history
...
219 foo=bar
220 echo $foo
221 foo=qux
222 echo $foo
223 history
コマンドが履歴に追加されたようです前に変数の拡張が発生します。
答え2
試行錯誤してみると、すぐに結果が出て役に立つようです。質問する前に、自分で試してみるといいでしょう。そうすれば、情報に基づいた詳細な質問をすることができます :)
あなたはこの分野にかなり不慣れなようですので、おそらく以下の内容が役に立つでしょうか?
$ history -c
$ FOOD="Bananas"
$ echo $FOOD
Bananas
$ history
137 FOOD="Bananas"
138 echo $FOOD
139 history
$ !138
echo $FOOD
Bananas
ご覧のとおり、history
コマンドは期待どおりに動作しました。138 を実行すると、最初に実行したときとまったく同じコマンドが実行されました。
プロのヒント:man
興味のあるコマンドについての詳細を読むには、 コマンドを使用します。例:
man history
Q完了したら終了と入力します。
乾杯!