我:”噫!这是为啥呢?我之前就是跑的这个命令,今天为啥不行呢?“

我:”fuck,输错命令了!!!“

大佬:“快试试thefuck,很神奇,名字相当噶性。当你命令输入错误不要怕,直接来一句fuck,自动纠正你输入的命令哦”

直接看官网的动图:

The Fuck is a magnificent app, inspired by a @liamosaur tweet, that corrects errors in previous console commands.

赶紧去试了试,果然6666!!!!!。如果第一次纠正后就是你需要的命令,直接回车执行就ok,也可以通过上下键进行切换;

要求

  • python (3.4+)
  • pip
  • python-dev

安装

  • 在 OS X 上,可以运行以下命令:
brew install thefuck
  • 在 Ubuntu / Mint 上,可以运行以下命令:
sudo apt update
sudo apt install python3-dev python3-pip python3-setuptools
sudo pip3 install thefuck
  • 在 FreeBSD 上,可以运行如下命令:
pkg install thefuck
  • 在 ChromeOS 上,可以运行如下命令:
crew install thefuck
  • 在 其他系统上,可以运行如下命令:
pip install thefuck

配置

需要在.bash_profile, .bashrc, .zshrc 或者其他的启动脚本中设置别名,以ubuntu为例:

#编辑 bashrc 配置文件
vim ~/.bashrc
#在文件尾加入一行给thefuck取别名fuck,可以按照自己的想法随意设置别名
eval "$(thefuck --alias fuck)"
#使配置生效
source ~/.bashrc

另外,如果你不担心fuck之后自动运行的命令,可以在~/.config/thefuck/settings.py设置require_confirmation=False,默认为True

vagrant@ubuntu-xenial:~$ cd ~/.config/thefuck/
vagrant@ubuntu-xenial:~/.config/thefuck$ ll
total 20
drwxrwxr-x 4 vagrant vagrant 4096 Jul 15 02:01 ./
drwxrwxr-x 3 vagrant vagrant 4096 Jul 15 01:27 ../
drwxrwxr-x 2 vagrant vagrant 4096 Jul 15 01:27 __pycache__/
drwxrwxr-x 2 vagrant vagrant 4096 Jul 15 01:27 rules/
-rw-rw-r-- 1 vagrant vagrant  720 Jul 15 01:27 settings.py

下面看看效果:

在设置为False之后,fuck之后的命令无需确认将自动运行,这有点像黑盒,你不知道它会执行什么(除非你很了解它的纠正逻辑或者是自己定义的规则),不建议开启

The Fuck的工作机制和自定义规则等高级用法可以查阅github文档:https://github.com/nvbn/thefuck