AX 爱鲜报

The Fuck 命令纠错

一款能自动纠正上一条终端命令错误的 Python 工具。执行失败命令后输入 fuck,它会根据内置规则生成并执行修正后的命令,支持 Bash、Zsh、Fish 等常见 shell。

爱鲜报评分

0.0

0 人评分

98k

星数

否

中文

Python

主语言

是

活跃

196

贡献者

人工分析

EDITORIAL

推荐理由

近 10 万 Star 的老牌命令行效率工具,规则库覆盖 git、docker、apt、cd 等大量高频场景,能显著减少重复敲命令的挫败感。安装简单,与现有 shell 集成成本低,适合作为开发者终端环境的常备插件。

适用场景

  • 终端命令拼写错误纠正
  • git/docker 等工具命令参数补全
  • 权限不足时自动补 sudo
  • 目录不存在时自动创建并进入
  • 日常开发终端效率提升

优点

  • 规则丰富,覆盖大量常见命令错误
  • 支持 Bash、Zsh、Fish、PowerShell 等多种 shell
  • 安装与别名配置简单,几乎零学习成本
  • MIT 开源,社区活跃,可自定义规则

缺点

  • 自动执行修正命令存在误执行风险,建议保留确认
  • 部分规则依赖特定工具版本,可能失效
  • 即时模式仍属实验特性,稳定性有限
  • 对复杂多步错误无法一次性修复
上手难度 入门

The Fuck 是什么

The Fuck 是一款用 Python 编写的终端命令纠错工具。当你在终端里敲错命令、缺少参数或权限不足导致执行失败时,只需输入 fuck,它就会分析上一条命令,匹配内置规则,生成一条修正后的命令供你确认执行。

项目灵感来自一条推文,如今已积累近 10 万 Star,是命令行效率工具中的经典之作。

典型示例

➜ apt-get install vim
E: Could not open lock file /var/lib/dpkg/lock - open (13: Permission denied)

➜ fuck
sudo apt-get install vim [enter/↑/↓/ctrl+c]
➜ puthon
zsh: command not found: puthon

➜ fuck
python [enter/↑/↓/ctrl+c]
➜ git brnch
Did you mean this?
    branch

➜ fuck
git branch [enter/↑/↓/ctrl+c]

工作原理

The Fuck 会把上一条失败命令与一系列规则逐一匹配。命中规则后,它会基于该规则生成新命令并执行。默认启用的规则覆盖了大量高频场景,例如:

  • sudo 相关:权限不足时自动补 sudo
  • cd_correction:拼写检查并纠正失败的 cd
  • cd_mkdir:目录不存在时先创建再进入
  • git_* 系列:修正分支、推送、add 等常见 git 错误
  • docker_not_command:纠正错误的 docker 子命令
  • dry:修复 git git push 这类重复输入

完整规则列表可在项目 README 中查看,也支持编写自定义规则。

安装与配置

macOS / Linux 可通过 Homebrew 安装:

brew install thefuck

Ubuntu / Mint 可用 pip 安装:

sudo apt update
sudo apt install python3-dev python3-pip python3-setuptools
pip3 install thefuck --user

Arch、FreeBSD、ChromeOS 等系统也有对应的包管理器安装方式。

安装后需要在 .bashrc、.zshrc 等启动脚本中加入别名:

eval $(thefuck --alias)
# 也可以自定义别名
eval $(thefuck --alias FUCK)

修改后执行 source ~/.bashrc 使其立即生效。

常用参数

  • fuck --yeah(或 -y):跳过确认,直接执行修正命令
  • fuck -r:递归修正,直到命令成功为止

适用人群

适合经常在终端里工作的开发者、运维人员,尤其是频繁使用 git、docker、包管理器的人群。由于会自动执行命令,建议保留默认的确认步骤,避免误执行。

评论

登录后才可评论与评分

0 条评论

  • 暂无评论,来写第一条吧。