这个骚操作,我笑了一整天

Python七号

共 1709字,需浏览 4分钟

 · 2021-09-03

这个工具非常有趣。

你在命令行窗口输入了一个命令,满怀期待的敲上了回车,结果提示你输入有误,你会不会不由自主的说一句 fuck?那就在命令行输入 fuck 吧,这个工具帮你自动纠正错误的命令。

看个动图:

这个工具就是 thefuck[1],GitHub 上有 63.7k 的星,很受欢迎。

安装

安装方法:

pip install thefuck

第一次输入 fuck 会提示你改个别名,如果不想改的话,在输入一次 fuck 就可以:

执行的时候千万不要读出来,用习惯了容易成为口头禅。😄

原理

这个工具尝试将上一个命令与规则匹配。如果找到匹配项,则使用匹配的规则创建一个新命令并执行。

比如你 cat 一个文件夹,它会自动改成 ls 文件夹:

你可以去官方仓库[2]查看默认启用的规则。

添加自定义规则

~/.config/thefuck/rules 目录下创建一个 Python 文件,比如叫 your_rules.py,文件必须包含两个函数:

match(command: Command) -> bool
get_new_command(command: Command) -> str | list[str]

其他都是可选的,比如一个 sudo 规则的代码如下:

def match(command):
    return ('permission denied' in command.output.lower()
            or 'EACCES' in command.output)


def get_new_command(command):
    return 'sudo {}'.format(command.script)

# Optional:
enabled_by_default = True

def side_effect(command, fixed_command):
    subprocess.call('chmod 777 .', shell=True)

priority = 1000  # Lower first, default is 1000

requires_output = True

设置

修改 ~/.config/thefuck/settings.py 即可。

最后的话

这个工具解决了每个人都可能会遇到的问题:输错了命令。考虑到输错了命令后很多人都会不由自由叫一声 fuck,然后把这个 fuck 变成一个实用工具,节省了程序员的宝贵时间,不得不说这个工具的作者 nvbn[3]很细心,很幽默,很风骚,是一个牛逼的 Python 开发者,大家可以 follow 他。

如果本文有帮助,不妨随手关注、点赞、再看哦,每天学点 Python 技术。

也可以留言讨论

参考资料

[1]

thefuck: https://github.com/nvbn/thefuck

[2]

官方仓库: https://github.com/nvbn/thefuck

[3]

作者 nvbn: https://github.com/nvbn


浏览 19
点赞
评论
收藏
分享

手机扫一扫分享

举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

举报