Fork me on GitHub

命令推荐 thefuck

目录

今天要讲的主角:thefuck , 一个修复错误的命令工具。

开发者都或多或少接触过 linux 接触过命令行, 当然肯定也都被命令行狠狠地"fuck"过. 我很多时候都是微不足道的原因导致了命令行出错, 例如将 python 输入成 ptyhon, 例如将 ls -alh 输入成 ls a-lh 而导致出错,这个时候我会想说 : “fuck”

安装

Ubuntu

1
2
3
sudo apt update
sudo apt install python3-dev python3-pip
sudo pip3 install thefuck

Mac

1
brew install thefuck

配置

Mac

eval $(thefuck --alias)复制到 ~/.zshrc 中,执行source ~/.zshrc

效果

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
➜ /Users/lee.guo/qunar.com/mobile/qchat_pb git:(newRead) >git brach -a
git: 'brach' is not a git command. See 'git --help'.
The most similar command is
branch
➜ /Users/lee.guo/qunar.com/mobile/qchat_pb git:(newRead) >fuck
git branch -a [enter/↑/↓/ctrl+c]
NewUI
master
* newRead
remotes/origin/2018-3-26-NewRn
remotes/origin/HEAD -> origin/master
remotes/origin/NewUI
remotes/origin/bugfix_qtalk_v8.35
remotes/origin/bugfix_qtalk_v8.35_1
remotes/origin/collection
remotes/origin/first_TLS
remotes/origin/google-auth
remotes/origin/historyForJson
remotes/origin/huawei_push
remotes/origin/imSdk
remotes/origin/json
remotes/origin/master
remotes/origin/newRead
remotes/origin/newRn
remotes/origin/qchat_review
remotes/origin/qchat_review_8.27
remotes/origin/qtalk-camera
remotes/origin/tls

使用须知

虽然 · 带来了很多便利,不过仍然建议注意这件事情:

thefuck 会给出的修正后的命令,但是默认情况下你看到它们的时候,命令都已经默认执行了。
大部分情况下,thefuck 可能给出的是正确的修正,但是小部分情况下,给出的修正并不是你想要的。
所以建议将 ~/.thefuck/settings.py 中的设置改为 require_confirmation = True,这样可以自己决定是否执行修正后的命令。

自定义规则

当然,你也可以自定义修正规则:
一个自定义规则的案例:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
def match(command, settings):
return ('permission denied' in command.stderr.lower()
or 'EACCES' in command.stderr)
# 获取 stderr 中的字符串和程序返回值(errno),
# 修正规则(命令前添加 sudo)
def get_new_command(command, settings):
return 'sudo {}'.format(command.script)
# 以下为可选项
# 默认是否开启
enabled_by_default = True
# 附加命令
def side_effect(command, settings):
subprocess.call('chmod 777 .', shell=True)
# 优先级,数字越大优先级越低。
priority = 1000

-------------本文结束感谢您的阅读-------------

发布时间:2018年03月27日 - 15:03

最后更新:2018年03月27日 - 15:03

原始链接:https://xn--v4q63d8za.xn--6qq986b3xl/命令推荐-thefuck/

许可协议: 署名-非商业性使用-禁止演绎 4.0 国际 转载请保留原文链接及作者。

谢谢您给我买糖吃~