コマンドライン
-CentOS- | -Ubuntu-

コマンドの履歴を表示する

「history」コマンド

書式
history [オプション] [履歴数]
主なオプション名 説明
-c 履歴を消去する。
履歴数 表示する履歴の数を指定する。

履歴番号の指定

書式
![履歴番号]

履歴を表示する(CentOS)

[user@host ~]$ history
1 pwd
.
.
.
994 ls
995 cat file.txt; echo success
996 cat file.txt && echo success
997 cat file.txt || echo success
998 cat file1.txt || echo success
999 exit
1000 history

履歴番号を指定する(CentOS)

[user@host ~]$ !995 -1-
ls
file.txt
  1. 指定した番号の履歴内容を実行する。

履歴を表示する(Ubuntu)

user@host:~$ history
636 ruby comment3.rb
.
.
.
1629 cd
1630 PATH=$PATH:dir
1631 echo $PATH
1632 ssh -p 35916 tatchinadmin@133.167.36.55
1633 sudo apt update
1634 sudo apt upgrade
1635 history

履歴番号を指定する(Ubuntu)

user@host:~$  !1631 -1-
echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
  1. 指定した番号の履歴内容を実行する。

 

コマンド履歴を読み込む仕組み

historyコマンドで、呼び出すことができる履歴は現在起動中のシェルで入力された内容とシャットダウンされる前、これまで入力した全てのコマンドが保存されている。

bashは終了するとき、ホームディレクトリにある.bash_historyファイルに書き出し、次回の起動時にまた読み込む仕組みになっている。

利用可能な履歴と最大数

利用可能な履歴と最大数

 

コマンド履歴の最大数の確認と変更

HISTSIZEの最大数を変更しても、端末(Terminal)を開き直すと元のHISTSIZEに戻る。

最大数を確認する(CentOS)

[user@host ~]$ echo $HISTSIZE
1000 -1-
  1. コマンド履歴の最大数は1000になる。

最大数表示を変更する(CentOS)

[user@host ~]$ HISTSIZE=2 -1-
[user@host ~]$ history
999 HISTSIZE=2
1000 history
  1. コマンド履歴の最大数を2に変更する。

最大数を確認する(Ubuntu)

user@host:~$ echo $HISTSIZE
1000 -1-
  1. コマンド履歴の最大数は1000になる。

最大数表示を変更する(Ubuntu)

user@host:~$ ISTSIZE=2 -1-
user@host:~$ history
999 HISTSIZE=2
1000 history
  1. コマンド履歴の最大数を2に変更する。

 

参照元情報

LinuCレベル1 合格教本
LinuCレベル1 合格教本