Linux中國

使用 ChatGPT AI 從英文文本生成 Linux 命令

即使是專家級的 Linux 用戶也不記得所有的 Linux 命令和它們的選項。這對我們人類來說是不可能的。

但是機器呢?尤其是人工智慧驅動的機器?

想像一下,如果你可以「命令」你的終端「顯示過去 12 小時內修改過的所有小於 100 MB 的文件」。當然,你可以使用 Linux 命令「命令」它,但是用普通的英語進行交互呢?

由於人工智慧的進步,這實際上是可能的。下面是自動生成 Linux 命令以顯示當前目錄中所有小於 10 KB 的文件的示例。

Shell Genie AI assistent in Linux terminal

我使用的工具叫做 Shell Genie。它是一個命令行工具,可讓你以普通的英語與終端進行交互。

它可以生成命令、運行命令(如果需要),還可以向你解釋生成的命令。

Shell Genie explain commands

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

An SVG animation showing pipx Installation steps

現在,重啟終端並運行以下命令安裝 shell-genie:

pipx install shell-genie

這可能顯示錯誤或需要依賴項。

A dependency installation to install the shell-geie properly

運行提示的命令來安裝所需的依賴。在我的例子中:

sudo apt install python3.10-venv

之後,再次運行 shell-genie 安裝命令,就可以安裝了。

The steps showing the installation of shell-genie

安裝完成後,運行以下命令:

shell-genie init

這將要求你選擇後端,openAI 或 free-genie。如果你有 openAI API,你可以選擇它或繼續使用 free-genie。

? free-genie 後端可能並不總是工作,因為它是由開發者託管的,他警告說可能會出現中斷。

然後它將請求允許報告反饋。用 y/n 來決定。

Run shell-genie init commad to set up the shell-genie properly

現在就可以使用了。

使用 Shell-genie

? 如果你要進行實驗,請盡量不要使用帶有 sudo 或刪除文件的命令。不要將你的機器交到機器手中。

如上所述,shell-genie 提供了兩種工作模式:

  • 從普通的英語獲取命令
  • 獲取命令解釋

從普通英語中獲取 Linux 命令

你可以使用 shell-genie 的 ask 選項從普通的英語中獲取命令。例如:

shell-genie ask "Display only the folders of this directory"

這將顯示正確的命令,並提示我們是否運行該命令。

The working of shell-genie, that will print the required command from the provided plain text description. Also propt the user to execute the same or not

獲取帶解釋的 Linux 命令

你可以使用 shell genie 來解釋你要運行的一些命令。

shell-genie ask "display all files smaller than 10kb in here" --explain

上面的命令首先會顯示需要的命令並進行解釋,然後提示用戶是否執行。

The explain mode in shell-genie, where it will explain the command that was asked in the form of plain english and then prompts the user to execute it or not

總結

有像 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

本文由 LCTT 原創編譯,Linux中國 榮譽推出


本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive

對這篇文章感覺如何?

太棒了
0
不錯
0
愛死了
0
不太好
0
感覺很糟
0
雨落清風。心向陽

    You may also like

    Leave a reply

    您的電子郵箱地址不會被公開。 必填項已用 * 標註

    此站點使用Akismet來減少垃圾評論。了解我們如何處理您的評論數據

    More in:Linux中國