historian

Command-line utility for managing shell history in a SQLite database.

  • Owner: jcsalterego/historian
  • Platform:
  • License:: Other
  • Category::
  • Topic:
  • Like:
    0
      Compare:

Github stars Tracking Chart

historian

Command-line utility for managing shell history in a SQLite database.

~/.bash_history is deduped and imported into a database.

Requirements

  • SQLite
  • a home directory

Installation

Download and 1) add the directory to your $PATH

export PATH="$PATH:/Users/jerry/historian"

or 2) add hist as an alias.

alias hist="/Users/jerry/historian/hist"

Getting Started

Import your ~/.bash_history

$ hist import

Super Installation

Add hist import to your .profile (assuming hist is in your path):

$ echo hist import >> ~/.profile

This will import your .bash_history every time you launch a new shell.

Usage

Show config:

$ hist config
version:      0.0.2
bash_history: /Users/jerry/.bash_history
db:           /Users/jerry/.historian.db
sqlite3:      /opt/local/bin/sqlite3

Search:

$ hist search monsters
690
    echo a zombie with no conscience >> ~/monsters
689
    echo ghoul >> ~/monsters
688
    echo goblin >> ~/monsters
687
    echo lochness >> ~/monsters

Search (shorthand):

$ hist /monsters
690
    echo a zombie with no conscience >> ~/monsters
689
    echo ghoul >> ~/monsters
688
    echo goblin >> ~/monsters
687
    echo lochness >> ~/monsters

View log:

$ hist log
1020
    rm -f README.md
1019
    emacs README.md
1018
    rm -rf .git

Pitfalls

Live like your db file could be corrupted at any time.

Be wary of running specially crafted hist commands or against
~/.bash_history files.

Cool Things in the Future

  • export to append to ~/.bash_history
  • scrub items from history
  • set or autodetect configs
  • other shells than bash
  • timestamp support

Main metrics

Overview
Name With Ownerjcsalterego/historian
Primary LanguageShell
Program languageShell (Language Count: 2)
Platform
License:Other
所有者活动
Created At2017-04-10 21:59:27
Pushed At2024-02-11 23:37:24
Last Commit At2021-03-10 14:23:17
Release Count2
Last Release Name0.0.2 (Posted on )
First Release Name0.0.1 (Posted on )
用户参与
Stargazers Count549
Watchers Count12
Fork Count27
Commits Count32
Has Issues Enabled
Issues Count15
Issue Open Count0
Pull Requests Count6
Pull Requests Open Count0
Pull Requests Close Count4
项目设置
Has Wiki Enabled
Is Archived
Is Fork
Is Locked
Is Mirror
Is Private