Disable per-session history file in OS X El Capitan
With the release of OS X El Capitan Apple has made a subtle change in how the bash history file works.
History is a handy feature to recall commands you gave in the past, especially if used together with grep
.
I’ve been noticing this new (weird) way right after the installation of the latest major release. But I’ve never cared that much about until today, when I stumbled across the solution while playing with bash.
Solution
As stated in this StackOverflow answer, bash runs a check every time a new session in started. Disabling the per-session history is as easy as:
touch .bash_sessions_disable
You may need to restart your sessions to apply the setting.
Fix 2.0
Now we may go a bit further and be sure history is written to ~/.bash_history
.
Open your .bash_profile
with nano
nano ~/.bash_profile
and add the line below at the very end of the file
export HISTFILE="$HOME/.bash_history"
Of course you can change the path to the one you like the most. Just be sure you have write
permission there. That’s all!
Thanks for reading.