使用 ChatGPT AI 從英文文本生成 Linux 命令
即使是專家級的 Linux 用戶也不記得所有的 Linux 命令和它們的選項。這對我們人類來說是不可能的。
但是機器呢?尤其是人工智慧驅動的機器?
想像一下,如果你可以「命令」你的終端「顯示過去 12 小時內修改過的所有小於 100 MB 的文件」。當然,你可以使用 Linux 命令「命令」它,但是用普通的英語進行交互呢?
由於人工智慧的進步,這實際上是可能的。下面是自動生成 Linux 命令以顯示當前目錄中所有小於 10 KB 的文件的示例。
我使用的工具叫做 Shell Genie。它是一個命令行工具,可讓你以普通的英語與終端進行交互。
它可以生成命令、運行命令(如果需要),還可以向你解釋生成的命令。
Shell-Genie 的特點
- 將普通英語轉換為 Linux 命令。
- 提供了一個需要 openAI 的 API 密鑰的 openAI gpt3 後端,和一個可以免費使用的 free-genie 後端。
- 提示一個選項以運行你要求的命令。
- 解釋生成的命令。
安裝 Shell Genie
Shell-genie 在任何發行版的默認倉庫中都不可用。你可以使用 pipx
安裝它。
要安裝它,你需要安裝 Python 3.10+ 和 Pip。你可以參考我們關於 如何在 Ubuntu 和其他 Linux 發行版中安裝 pip 的文章。
安裝 pip
後,使用以下命令安裝 pipx
:
python3 -m pip install --user pipx
python3 -m pipx ensurepath
現在,重啟終端並運行以下命令安裝 shell-genie:
pipx install shell-genie
這可能顯示錯誤或需要依賴項。
運行提示的命令來安裝所需的依賴。在我的例子中:
sudo apt install python3.10-venv
之後,再次運行 shell-genie
安裝命令,就可以安裝了。
安裝完成後,運行以下命令:
shell-genie init
這將要求你選擇後端,openAI 或 free-genie。如果你有 openAI API,你可以選擇它或繼續使用 free-genie。
? free-genie 後端可能並不總是工作,因為它是由開發者託管的,他警告說可能會出現中斷。
然後它將請求允許報告反饋。用 y/n
來決定。
現在就可以使用了。
使用 Shell-genie
? 如果你要進行實驗,請盡量不要使用帶有
sudo
或刪除文件的命令。不要將你的機器交到機器手中。
如上所述,shell-genie 提供了兩種工作模式:
- 從普通的英語獲取命令
- 獲取命令解釋
從普通英語中獲取 Linux 命令
你可以使用 shell-genie 的 ask
選項從普通的英語中獲取命令。例如:
shell-genie ask "Display only the folders of this directory"
這將顯示正確的命令,並提示我們是否運行該命令。
獲取帶解釋的 Linux 命令
你可以使用 shell genie 來解釋你要運行的一些命令。
shell-genie ask "display all files smaller than 10kb in here" --explain
上面的命令首先會顯示需要的命令並進行解釋,然後提示用戶是否執行。
總結
有像 Explain Shell 這樣的工具(試圖)解釋 Linux 命令。但是這個 Shell genie 通過從普通的英語生成命令將它提升到一個新的水平。
當然,不能一味依賴人工智慧。如果你對 Linux 命令有一定的了解,可以使用 Shell Genie 生成適合你的命令。你不必為手冊頁或各種網站而苦惱。
它可以幫助你在終端中更快地做事,也可以減少你的知識儲備。為什麼? 因為你越依賴它,你自己學的就越少。
這就是我所想的。 無論你同意或不同意我的觀點,都可以在評論中發表你的看法。
(題圖:MJ/chatgpt commands linux cli illustration in high resolution, very detailed, 8k)
via: https://itsfoss.com/linux-terminal-ai/
作者:Sreenath 選題:lkxed 譯者:geekpi 校對:wxy
本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive