.bash_history
履歴ファイルだよ
bash起動後に実行したコマンドの履歴が書き込まれるよ
bashを終了したり「history -a」を実行したタイミングで書き込まれるよ
簡単に書くよ
.bash_historyとは
bashで実行したコマンドの実行履歴が保存されるファイル
です。
詳しく書くよ
順番に見ていきましょう。
まずは予備知識として「シェル」と「bash」について簡単に説明します。
「そんなの説明されなくても知ってるよ!」な人は適当に読み飛ばしてください。
シェルは「人間様からの入力をコンピュータさんに伝えるプログラム」です。
コンピュータを1つの会社に例えれば、シェルは受付のおねーさんです。
ついでなので書いておくと、コンピュータを使う人間が会社への訪問者、パソコンの中身が会社で働いている人に相当します。
あなたがパソコンの中身と直接やり取りすることは ありません。
あなたが やり取りする相手は、シェルです。
シェルが、あなたの代わりにパソコンの中身と やり取りしてくれます。
シェルの詳細は、用語「シェル」の説明を ご覧ください。
bashは「シェルの種類のひとつ」です。
一口に「シェル」と言っても、いろいろ あります。
その「いろいろ」のひとつです。
以上を踏まえて
bashを起動してから実行したコマンドの履歴が保存されるファイル
が「.bash_history」です。
「.bash_history」はログインした直後のディレクトリ(ホームディレクトリ)にあります。
場所を指定しないで
cd
コマンドを実行したときに移動するディレクトリです。
ただし「.bash_history」は隠しファイルです。
普通に
ls
を実行しても表示されないかもしれません。
「-a」オプションを付けて
ls -a
を実行すれば「.bash_history」も表示されます。
ちなみに、ホームディレクトリは「~/」で表現されます。
cd ~/ ; more .bash_history
や
more ~/.bash_history
を実行することで「.bash_history」の中を覗けます。
注意点として「.bash_history」に履歴が書き込まれるタイミングは
1.bashを終了したとき
2.「history -a」を実行したとき
のどちらかです。
リアルタイムで履歴が書き込まれるわけでは ありません。
例えば、そうですね。
最初の時点で「.bash_history」の中身が空っぽだったとしましょう。
コマンド
bash
を実行して、bashを起動しました。
ここから履歴の記録が始まります。
次に
ls
と
tail ~/.bash_history
を実行しました。
この時点では「.bash_history」の中身は空っぽです。
次に
exit
を実行して、bashを終了しました。
この時点で、はじめて「.bash_history」にコマンドの実行履歴が書き込まれます。
今回の例で言えば
ls
tail ~/.bash_history
exit
が「.bash_history」に書き込まれます。
もし任意のタイミングで「.bash_history」の中身を更新したい場合は
history -a
を実行します。
そうすると、その時点で「.bash_history」の中身が更新されます。
一言でまとめるよ
まぁ「.bash_history」って単語が出てきたら「bashのコマンド実行履歴が保存されるファイルなんだな~」と お考えください。






