关于ide:如果你也会手抖输错命令那就必须给你推荐这个-Fuck-工具

29次阅读

共计 1954 个字符,预计需要花费 5 分钟才能阅读完成。

【导语】:The Fuck 是一个命令输入校验工具,能主动校对输出命令并执行正确的指令。大略早在 2015 年就火了。

简介

The Fuck 是一款功能强大的应用程序,能够校对并纠正控制台中命令的谬误。它的开发者走漏,设计灵感来源于这条推特:

简略的运行例子:

更多的例子:

➜ apt-get install vim  
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 vim [enter/↑/↓/ctrl+c]  
[sudo] password for nvbn:  
Reading package lists... Done  
...  
fatal: The current branch master has no upstream branch.  
To push the current branch and set the remote as upstream, use  
  
    git push --set-upstream origin master  
  
  
➜ fuck  
git push --set-upstream origin master [enter/↑/↓/ctrl+c]  
Counting objects: 9, done.  
...  
➜ puthon  
No command 'puthon' found, did you mean:  
 Command 'python' from package 'python-minimal' (main)  
 Command 'python' from package 'python3' (main)  
zsh: command not found: puthon  
  
➜ fuck  
python [enter/↑/↓/ctrl+c]  
Python 3.4.2 (default, Oct  8 2014, 13:08:17)  
...  

我的项目地址是:https://github.com/nvbn/thefuck

下载安装

  • 依赖。The Fuck 运行环境依赖 python 3.4+、pip、python-dev。
  • 装置。

    1. OS X 应用 Homebrew 装置:
brew install thefuck  
  1. Ubuntu/Mint:
sudo apt update  
sudo apt install python3-dev python3-pip python3-setuptools  
sudo pip3 install thefuck  
  1. FreeBSD:
pkg install thefuck  
  1. ChromeOS:
crew install thefuck  
  1. 其余操作系统应用 pip 进行装置:
pip install thefuck  
  1. 降级:
pip3 install thefuck --upgrade  

作用机制

The Fuck 尝试将谬误的命令与规定匹配,如果找到匹配项,则应用匹配的规定创立一个新命令并执行。规定很多没方法一一列举,简略列举几个,各位有趣味的话到官网上查找。

  • adb\_unknown\_command:修复拼写错误的命令,例如 adb logcta
  • cat\_dir:尝试 cat 目录时应用 ls 替换 cat
  • cd\_parent:更改 cd.. 为 cd ..
  • docker\_not\_command:修复了谬误的 docker 命令,如 docker tags
  • git\_branch\_delete:更改 git branch -d 为 git branch -D
  • go\_unknown\_command:修复谬误的 go 命令,例如 go bulid
  • java:在运行 Java 程序时删除.java 扩展名 与此同时,The Fuck 也容许用户自定义匹配规定。
  • 在 \~/.config/thefuck/rules 目录下创立一个文件名为 your-rule-name.py 的违建,规定文件必须蕴含两个函数:
match(command: Command) -> bool  
get_new_command(command: Command) -> str | list[str]  
  • 规定能够蕴含可选性能:
side_effect(old_command: Command, fixed_command: str) -> None  

开源前哨 日常分享热门、乏味和实用的开源我的项目。参加保护 10 万 + Star 的开源技术资源库,包含:Python、Java、C/C++、Go、JS、CSS、Node.js、PHP、.NET 等。

正文完
 0