Linuxで過去のコマンドを再実行したい場合や、過去にどのようなコマンドを実行したかを確認した場合があると思います。
今回は、コマンド履歴を検索する方法を2つ紹介します。
1コマンドでコマンド履歴を検索する方法
[Ctrl]+[r]を押下することで、過去のコマンド履歴検索画面に入ることができます。
■Linuxコンソール上で[Ctrl]+[r]を押下すると、以下のコマンド履歴検索が表示される
(reverse-i-search)`':
■この検索画面で、検索文字列を入れると過去のコマンドが表示される
(reverse-i-search)`mysql': ps -ef |grep mysqld
■再度[Ctr]+[r]を押下するとその前のコマンドが表示される
(reverse-i-search)`mysql': systemctl status mysqld.service
historyコマンドでコマンド履歴を検索する方法
以下のようにhitoryコマンドからgrepするのも一つの手ではありますが、すぐに実行することが出来ないため作業的には遅くなります。
# history | grep <検索文字列>
[root@cent77 ~]# history |grep mysql
64 tar xvf mysql-5.7.29-1.el7.x86_64.rpm-bundle.tar
90 yum localinstall mysql-community-*
91 systemctl start mysqld.service
92 systemctl status mysqld.service
98 ps -ef |grep mysql
作業効率化のためにも、[Ctrl]+[r]でのコマンド履歴検索を活用してみてください。
また、コマンドの履歴をデフォルトの1000から増やしたい場合は、以下の記事を参照してください。