コマンドライン上で矢印キー(↑↓)を使って、過去に実行したコマンドを一つずつ表示させて再実行する方法を良く使っています。ただ、それだと直近のコマンドを再実行する場合は問題ないですが、いくらか前に実行して矢印キーで戻ることが難しい場合は、historyコマンドが有効だと思います。よく使っているhistoryの実行パターンを厳選してご紹介したいと思います。
スポンサーリンク
historyコマンドで実行履歴を表示
コマンドラインでhistoryと実行することで、過去の実行履歴を表示することができます。
$ history
下記が実行例になります。
$ history 8 ls 9 hitory 10 history 11 cat in.txt 12 pwd 13 ls 14 history
スポンサーリンク
historyとgrepでコマンド履歴を効率的に表示
ただ、historyで表示される履歴の数が多くなってきた場合は、追うのが大変です。
そこで、historyとgrepをパイプ"|"でつないで組み合わせることで、実行履歴を見つけやすくすると良いと思います。
例えば、catコマンドを実行した履歴を中心に表示させたい場合は、下記のように実行します。
$ history | grep "cat"
実行すると下記のように、”cat”の文字列を含む履歴を表示させることができます。
$ history | grep "cat" 11 cat in.txt 15 history | grep "cat"
historyの履歴から選択して再実行する方法
!履歴番号 の形式で、再実行することができます。
例えば、下記のhistory実行結果があったとします。
$ history | grep "cat" 11 cat in.txt 15 history | grep "cat"
履歴番号11を実行したい場合には、下記のように実行します。
$ !11
下記が実行結果で、履歴番号11が実行されているのが確認できます。
$ !11 cat in.txt 20 45 awk 67 32 delimiter 78 56 row
historyの履歴を削除する方法
-cオプションで履歴を削除することができます。
$ history -c
スポンサーリンク