命令输入有误怎么办?这款神器会给你自动纠正后执行新命令!

是不是有些小伙伴喜欢在终端码代码?就是类似我们常说的命令行模式,没有太多的智能提示,只有一个黑黑的背景和数不尽的代码行,让人有一种面对大型机的感觉。

很多操作系统都有终端,比如 Linux 的 terminal,mac 的终端。但是在终端输入命令时有一个问题,就是容易输错,因为没有任何提示,一旦一长串代码只是输错了一个字母,也会导致重新输入的倒霉事情发生。

如果运气不好,一不小心,一不仔细,连着输错好几次重输好几次,那真的是要在心里骂脏话了。

国骂的种类想必大家都了然于心,相比于中文的博大精深,外国程序猿,可能只会用一个F打头的词来宣泄自己的不满。

但是今天小编就要给大家介绍一个神器,每当自己敲错命令时,只要来一句F打头的词,竟然系统就会自动修正刚刚输入错误的命令!

是不是神奇的不像话?

其实这款神器的原理就是预先设定了很多很多命令规则,一旦系统匹配上某条命令规则,就会根据规则创建并执行新命令。

我们看看其他一些例子:

➜ 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
...
➜ git push
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)
...
➜ git brnch
git: 'brnch' is not a git command. See 'git --help'.

Did you mean this?
    branch

➜ fuck
git branch [enter/↑/↓/ctrl+c]
* master
➜ lein rpl
'rpl' is not a task. See 'lein help'.

Did you mean this?
         repl

➜ fuck
lein repl [enter/↑/↓/ctrl+c]
nREPL server started on port 54848 on host 127.0.0.1 - nrepl://127.0.0.1:54848
REPL-y 0.3.1
...

是不是妙不可言?

我们再来看下默认的匹配规则示例:

  • adb_unknown_command – 修复拼写错误的命令,像  adb logcta;
  • ag_literal – 将-Q增加到ag;
  • aws_cli – 修复拼写错误的命令,像  aws dynamdb scan;
  • az_cli – 修复拼写错误的命令,像  az providers;
  • cargo – 运行  cargo build 替代  cargo;
  • cargo_no_command – 修复拼写错误的命令, 像  cargo buid;
  • cat_dir – replaces cat with ls when you try to cat a directory;

像这样的规则命令,小编一眼望去就有几百条。当然你也可以自己定制增加想要的个性化规则,这样当你一边骂骂咧咧,一边输入着F打头词,结果电脑就真的执行下去的时候,是不是旁边的小哥哥小姐姐看到了眼睛都要瞪圆了?

有的小伙伴还想,这样高级的功能会不会很难啊?其实你只需要有以下的环境:

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

就有了实现的基础,再关注小编的公众号回复关键字获取项目地址,绝对一学就会!


点击下方卡片,关注公众号“TJ君

回复“0904”,获取项目地址

本文分享自微信公众号 - 程序猿DD(didispace)。
如有侵权,请联系 [email protected] 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章