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

发表于:2023-5-05 09:23

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:Sreenath    来源: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 生成适合你的命令。你不必为手册页或各种网站而苦恼。
  它可以帮助你在终端中更快地做事,也可以减少你的知识储备。为什么? 因为你越依赖它,你自己学的就越少。
  本文内容不用于商业目的,如涉及知识产权问题,请权利人联系51Testing小编(021-64471599-8017),我们将立即处理
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号