对于Linux小白最头疼的问题是不知道改用什么命令,或者经常忘记命令。虽然Linux自带了一些帮助命令,比如使用help、man、info,但对于一个小白来说真的不是那么好用。
一般情况下,就是切出终端,奔去谷歌和度娘疯狂找解答了。
boy哥给大家分享一款实用的开源项目工具:howdoi,它是由一位叫San Kumar的印度小哥开发的,是一个便捷的命令行操作指南Q&A工具。
使用它你可以像在搜索引擎里一样查找问题了,无需记住命令,直接敲你想要解决的问题就行。
先看一下装X的效果。
![351b9a89a076e3eec0d98afe3f766aec.gif](https://i-blog.csdnimg.cn/blog_migrate/4140b8b5647e8c1c42c7f11458a677bc.gif)
看到了吧,有一点人工智能的感觉。终端直接敲:howdoi + 问题,可立即获得常见 Linux 相关问题的解决方案。
▍如何安装?
按下面的命令在终端敲进去就好了,但需要PHP5+的依赖环境。
$ mkdir -p ~/bin && wget https://raw.githubusercontent.com/san-kumar/howdoi/master/howdoi -O ~/bin/howdoi && chmod +x ~/bin/howdoi$ sudo ln -s ~/bin/howdoi /usr/local/bin/howdoi$ howdoi check my linux version
▍如何使用?
很简单,只需要记住四个参数,然后加上我们的问题,像下面这个格式。
howdoi [-n -v -h -i] -- 问题
-n:结果数量(默认为1)-v:显示完整答案(否则只显示代码)-i:交互式或 REPL 模式(用于热键绑定)-h:帮助
下面举几个不同用法的案例。
1、快速查找信息
如果快速查找,那就直接上问题,就是结果稍微简陋点。
$ howdoi extract a bz2 file -j, --bzip2 filter the archive through bzip2 tar -xvjf enginsxt.tar.bz2 Source: https://askubuntu.com/questions/707861/how-to-extract-tar-bz2
2、显示详细信息
如果想要完整信息,那就加上-v参数。
$ howdoi -v add a program to cron Put a shell script in one of these folders: /etc/cron.daily, /etc/cron.hourly, /etc/cron.monthly or /etc/cron.weekly. If these are not enough for you, you can add more specific tasks e.g. twice a month or every 5 minutes. Go to the terminal and type: crontab -e ...snip Source: https://askubuntu.com/questions/2368/how-do-i-set-up-a-cron-job
3、返回多个结果
如果想要查看多个结果对比,就加上-n和数量。
$ howdoi -n 2 attach to a screen screen screen -S myprogramrunningunderscreen screen -lsThere are screens on: 4964.myprogramrunningunderscreen (05/31/2013 09:42:29 PM) (Detached) 4874.pts-1.creeper (05/31/2013 09:39:12 PM) (Detached)Source: https://askubuntu.com/questions/302662/reattaching-to-an-existing-screen-session screen -d -rSource: https://askubuntu.com/questions/302662/reattaching-to-an-existing-screen-session
4、其它相关
其它的还可以查看编程用法。
$ howdoi js hex to int hexString = yourNumber.toString(16); yourNumber = parseInt(hexString, 16); Source: https://stackoverflow.com/questions/57803/how-to-convert-decimal-to-hexadecimal-in-javascript
再比如,还可以查看如何升级php。
$ howdoi upgrade to latest php sudo apt-get upgrade sudo apt-get dist-upgrade sudo apt-add-repository ppa:ondrej/php sudo apt-add-repository ppa:ondrej/php5-oldstable sudo apt-add-repository ppa:ondrej/php5 sudo apt-add-repository ppa:ondrej/php5-5.6 sudo apt-get update sudo apt-get install php5.5 sudo apt-get install php5.6 sudo apt-get install php7.0 do-release-upgrade Source: https://askubuntu.com/questions/565784/how-do-i-upgrade-php-version-to-the-latest-stable-released-version
howdoi工具调用的解答库来源于askbuntu.com论坛上的提问,论坛上已有的问题解答都可以通过本工具实现对话式查询。
这个神器工具开发还不到100行,但解决了Linux小白上手操作头疼的难题,分分钟获取解决方案。目前该项目已开源在GitHub上,地址如下。
https://github.com/san-kumar/howdoi