I am excited to show my new application, ShellHistory. I can say that I started working on it four years ago when I published my little shell script dbhist. That script was convenient. It kept shell history from many macs for the last years (close to 100,000 records). But it was a time for an upgrade.
ShellHistory solves several problems.
- It keeps your shell history safe by storing it in the SQLite database with Write-Ahead-Log, not just a simple text file, and backing it up to the iCloud.
- It makes it easier to find. By leveraging the Full-Text Search engine from SQLite, you can type some terms that you remember and find the command you were looking for.
- Revisit your session. ShellHistory extends the history by including exit codes, working directory, host, user, elapsed time of the command, and session id. With that, you can restore your workflow. So you can come back tomorrow and show your git-guru friend exactly what you did with that git repository that is very inconsistent today.
- A lot of shell commands are knowledge. You could find on the internet how to fix that or this on your Mac, and next time you will have to google it again, but maybe you will not have so much luck the next time finding the right blog post. You can organize commands from your shell history in Notebooks.
- Because ShellHistory keeps the elapsed times of the commands you run, you can now compare the build time over time.
There are more workflows in all of this. I only showed you a few that I like to use. I am excited to release ShellHistory v1, and there are more features in my mind that I would love to add in the future. I hope you will like it as much as I do.
ShellHistory is available on the App Store as a sandboxed application with a special launch price of $5.99. That price will go up to $11.99. I also made a 14-days Trial version available for download from this website. Please try it before you decide to purchase it.
It is very easy to integrate it with zsh, fish, or bash. It does not break your nice-looking prompts. You can keep using your favorite terminal apps and extensions for your shells.
You can read more about ShellHistory at its own page ShellHistory.