しばらくの間Linuxを使用しながらこの動作を見たことがありますが、正しく説明を聞いたことがありません。たぶんそれは非常に簡単かもしれません。
同じサーバー上で同じユーザー(bash)で2回ログインすると、履歴コマンドを使用して別の結果を得ることができます。
私はいつも.bash_historyファイルが1つだけなので、結果も1つだけだと思いました。
答え1
bashの起動中に履歴がファイルからロードされます。 bash が終了すると、ファイルは自動的に保存されます。 Bash の実行中、履歴はメモリーに保持され、履歴ファイルや複数の bash インスタンスと同期されません。
history
現在の履歴をファイルに手動で保存したり、組み込みコマンドを使用してディスクからロードしたりできます(参考help history
文献を参照)。
.bash_historyファイルは1つしか存在しませんが(2つのファイルの名前は同じではないため)、HISTFILE
別のファイルを使用するように変数を設定できます。
man bash
(セクション)のHISTORY
有用な引用:
起動時の履歴は、HISTFILE変数(デフォルトは〜/ .bash_history)という名前のファイルで初期化されます。
そして
書き込み可能シェルが終了すると、最後の $HISTSIZE 行が履歴リストから $HISTFILE にコピーされます。