命令輸入有誤怎麼辦?這款神器會給你自動糾正後執行新命令!

是不是有些小夥伴喜歡在終端碼代碼?就是類似我們常說的命令行模式,沒有太多的智能提示,只有一個黑黑的背景和數不盡的代碼行,讓人有一種面對大型機的感覺。

很多操作系統都有終端,比如 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源創計劃”,歡迎正在閱讀的你也加入,一起分享。

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