作者 | JackTian
来源 | 微信公众号:杰哥的IT之旅(ID:Jake_Internet)
转载请联系授权(WeChat ID:Hc220066)
前言
或许你时常在 Linux 操作系统终端下有敲错命令的困扰吧?
没关系,今天跟大家分享一招,能自动纠正你的终端命令,拿出手跟你的领导露一手,不服你才怪。
一个骚到极致的命令——fuck,是一款能够自动纠正敲错命令的终端应用。
安装步骤
Ubuntu 下安装:
# sudo apt update
# sudo apt install python3-dev python3-pip
# sudo pip3 install thefuck
将 Fuck 设置为:alias,一般情况下需要在文件中修改:.bash_profile,.bashrc,.zshrc
# eval $(thefuck --alias)
No fucks given
举个例子(比如在终端下敲命令,因手误操作。)
如下代码块,在自己的终端下进行操作执行了puthon,结果输出了一段报错,这时候你不仔细观察的话,或许都不知道自己是敲错了命令,甚至都要根据报错输出结果来进行排查问题,根本不用的。
你只需要在终端下输入命令:fuck,直接按enter键将会按默认的正确命令进行执行就会自动输出了,也可以根据方向键↑,↓选择要执行的命令,若没有要执行的命令可按组合键ctrl+c进行退出即可。
# puthon
Command 'puthon' not found, did you mean:
command 'python' from deb python3
command 'python' from deb python
command 'python' from deb python-minimal
Try: apt install <deb name>
# fuck
python3 [enter/↑/↓/ctrl+c]
Python 3.6.8 (default, Apr 9 2019, 04:59:38)
[GCC 8.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
举个例子(比如在终端下执行命令,权限不够或且执行的命令缺少)
如下代码块,是安装lrzsz,且权限不够,是以普通用户登录的且需要以sudo命令来执行。
# apt-get install lrzsz
E: Could not open lock file /var/lib/dpkg/lock - open (13: Permission denied)
E: Unable to lock the administration directory (/var/lib/dpkg/), are you root?
# fuck
sudo apt-get install lrzsz [enter/↑/↓/ctrl+c]
[sudo] password for nvbn:
Reading package lists… Done
…
通过以上两个案例,如果在终端下执行命令时,出现错误可通过fuck就可以搞定了。
在 mac OS 上安装,可以通过 homebrew 安装 The Fuck
# brew install thefuck
除此之外,在其他系统上, 使用以下命令安装 The Fuck pip:
# pip install thefuck
通过上述的执行过程,可以得知整个执行的过程如下。
fuck 的默认行为需要时间来重新运行以前的命令。
在极速模式下,The Fuck 通过使用 script 记录输出,然后来读取日志,从而节省时间。
地址:https://github.com/zeit/hyper