本地部署 explainshell (命令行解释服务)

前段时间咱们分享了explainshell.com 一个命令行解释的网站,它会分析命令的帮助文档,根据你想查询的命令参数来抽取对应的解释,而后很是清晰地显示出来。python

explainshell.com

然而,有时咱们会有本地查询的需求,好比:git

  • 没有网络或网络不好(多是沙漠里的无人区,或者管理严格的公司)
  • 本机上的命令网站上没有收录其帮助文档,或者收录的是不匹配的版本的文档

本文将介绍如何在本地架设explainshell服务。放心,这很容易。github

首先咱们须要将explainshell的git仓库克隆到本地:mongodb

git clone https://github.com/idank/explainshell.git

而后是安装须要的依赖。首先要安装mongodb,在Debian/Ubuntu下能够经过以下命令安装:shell

sudo apt-get install mongodb

而后是python的一些库,能够自动安装:segmentfault

cd explainshell
pip install -r requirements.txt

以后是用mongodb加载分类数据:浏览器

mongorestore dump/explainshell && mongorestore -d explainshell_tests dump/explainshell

好了,差很少完成了,运行下测试,确保没出什么问题:网络

make tests

测试O.K.以后,咱们添加下man page。仓库里自带的man page屈指可数,仅供测试之用。咱们须要将本机上的man page添加过来。测试

rm -r manpages/1 manpages/2
ln -s /usr/share/man/man1 manpages/1
ln -s /usr/share/man/man8 manpages/8
python explainshell/manager.py --log info echo

注意咱们使用了软连接,这样不会占用额外的磁盘空间,最重要的是,咱们的操做系统更新软件以后咱们不须要重复添加。网站

好了,如今只需启动服务就能够了

make serve

如今就能够在本地使用explainshell 啦!只需在浏览器里访问 http://127.0.0.1:5000/

相关文章
相关标签/搜索