Skip to main content

Automatically index your shell history in a full-text search database. Magic!

Project description

Automatically index your shell history in a full-text search database. Magic!

Features

  • Uses SQLite3’s excellent FTS4 extension to provide full-text search.

  • Respects HISTTIMEFORMAT if set.

Requirements

  • Bash

  • Python 3

Install

Install from pip:

pip install duiker

Or, simply download the single Python file and add it to your PATH.

Setup

Import your existing shell history:

history | duiker import -

Configuration

If you want to automatically import your shell history on-the-fly, you can add duiker import to your PROMPT_COMMAND [1].

Run duiker magic to print a shell snippet that automatically imports your last command into Duiker:

duiker magic

Configure this shell snippet as part of your PROMPT_COMMAND. Run duiker magic --help for an example.

Searching

Duiker indexes your shell history in an SQLite3 full-text search table.

You can use any MATCH [2] expression to search the database:

$ duiker search git
2017-04-13 15:50:02         git staged
2017-04-13 15:50:14         git commit -a
2017-04-13 15:55:07         git diff
$ duiker search '(git OR fossil) diff'
2017-04-27 15:15:01         git diff
2017-04-27 15:15:49         git diff
2017-04-28 14:49:19         fossil diff
2017-04-28 14:53:09         fossil diff src/main.rs
$ duiker search 'sqlite*'
2017-03-04 19:00:42         sqlite3 db.sqlite
2017-03-04 19:13:11         rm db.sqlite

Limitations

Duiker only supports Bash at present. Pull requests for other shells welcome.

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

duiker-0.1.0.tar.gz (5.5 kB view details)

Uploaded Source

Built Distribution

duiker-0.1.0-py3-none-any.whl (7.4 kB view details)

Uploaded Python 3

File details

Details for the file duiker-0.1.0.tar.gz.

File metadata

  • Download URL: duiker-0.1.0.tar.gz
  • Upload date:
  • Size: 5.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for duiker-0.1.0.tar.gz
Algorithm Hash digest
SHA256 ca78200f85a6dd271f779529e2f79e87ab491b3ce5e542b02fcbba86617d4d34
MD5 82b005e94b8ac846681927815070f14f
BLAKE2b-256 2ee2170ef5d1fbe11ce7e63eabbeef3b3e3844efb4d4e86227a0001fa5916cfe

See more details on using hashes here.

File details

Details for the file duiker-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for duiker-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f7c399ed01289c2cffbf55a26eddfc8b1fa0463ad6e22f34850fa5579e5b156c
MD5 501a7f3ec0c186dd4d7b5cffce621f1c
BLAKE2b-256 5fdac8a2ef82860bd1f97bfbcb1cb7a478ed024907bdd246afa48afee03ba4a0

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page