記一個搞笑且牛逼轟轟的可以糾正控制檯命令的 thefuck

第一次看見這個名字,也是醉了,真是直白啊,赤裸裸的寫出了由於拼寫錯誤而執行失敗的命令的心聲。閒來試用了一下,感覺還是很不錯的。

所需環境

python (3.4+)
pip
python-dev

安裝

支持多平臺多種安裝方式, 可以自由選擇

  • OS/Linuxbrew 可以依賴 Homebrew/Linuxbrew
    brew install thefuck

  • Ubuntu / Mint
    sudo apt update
    sudo apt install python3-dev python3-pip python3-setuptools
    sudo pip3 install thefuck

  • FreeBSD
    pkg install thefuck

  • ChromeOS
    crew install thefuck

  • 其他系統,就要靠我熱愛的python環境了,pip
    pip install thefuck

環境配置

安裝完之後,需要下一步配置,如果直接執行fuck命令,會有以下提示,跟着提示做就好了。
在這裏插入圖片描述

需要將以下命令,放入 .bash_profile, .bashrc, .zshrc 或者你指定的啓動腳本中。

eval $(thefuck --alias)
# 如果你想起一個別名的話,也可以,比如 
eval $(thefuck --alias love)   此時 fuck和love 都可以執行

在這裏插入圖片描述

使用

通過上面的例子,估計你也看明白了,簡單的步驟如下
1、(啊~~)控制檯命令輸錯了
2、(莫慌)輸入 fuck
3、如果提示的命令是你想要的正確命令,則按 enter確定,還可以通過 上下箭頭來選擇你想要的命令,或通過 Ctrl+C 放棄所有選擇
4、happy ending

ps:如果你想到信任func, 那就加參數呀
fuck -y 或者 fuck --yeah 或者 fuck --yes 代表直接相信他的正確判斷
在這裏插入圖片描述
鑑於有多種選擇,那可以加 -r ,可以遞歸修復命令,直至選中一條可以成功執行的命令
在這裏插入圖片描述

糾錯規則

大部分的 git 、brew、yum、apt 、pip 還有一些常用的 linux 命令都支持

具體的請參考官方:https://github.com/nvbn/thefuck

高級用法之 創建自己的規則

在~/.config/thefuck/rules 下創建規則文件 your-rule-name.py
比如:
我自定義了一個 hello 的命令,輸錯了怎麼辦呢
在這裏插入圖片描述
在這裏插入圖片描述
我在~/.config/thefuck/rules下創建了一個hello.py文件,文件內容如下:

def match(command):
    return 'command not found: hell' in command.output.lower()

def get_new_command(command):
    return 'hello'

解答:
該文件必須包括兩個function
match(command: Command) -> bool  用來判斷錯誤的命令是否命中該文件
get_new_command(command: Command) -> str | list[str]  用來修正命令,並返回正確的命令或命令列表

在這裏插入圖片描述

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