A script for full text searching Linux man pages with Elasticsearch.
It has been developed to play around with the idea described in this post.
Given that you have a running Elasticsearch instance, the script creates an index named elman
and feeds it with the man pages of your Linux system using the apropos .
command to get all available pages. Then you can use it to full text search the man pages as simple as:
elman concatenate files
It is a Ruby script so you must have the language installed.
Clone this repository and from withing the script's directory execute:
bundle
to install the elasticsearch
gem and its dependencies.
Note
If you don't have bundler on your system, install it with:
gem install bundler
To setup the index and load the man pages use:
./elman -s
or
./elman --setup
The script creates a file under your home directory named .elman.yml
. Change its contents to match your setup:
---
:elasticsearch:
:host: localhost
:port: '9200'
:search_results_size: 10
To search the man pages, use:
elman <query>
elman edit images
- Improve search definition
- Fork it ( https://github.com/iridakos/elman/fork )
- Create your feature branch (
git checkout -b my-new-feature
) - Commit your changes (
git commit -am 'Add some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create a new Pull Request
This tool is open source under the MIT License terms.