网站搜索

不确定 Linux 命令会对您的系统执行什么操作?询问 ChatGPT


要点

  • 在终端中运行未知的命令和脚本可能会损坏您的系统或意外删除数据。
  • 使用 ChatGPT 通过分解复杂的 Linux 命令来理解它们。
  • 虽然人工智能聊天机器人很有帮助,但它确实会出错,因此请务必使用权威来源验证它们给出的解释。

您可能听说过您永远不应该在 Linux 终端(或任何命令行)中运行您不完全理解的命令或脚本。不幸的是,命令行应用程序的语法可能很难分解和理解。以下是 ChatGPT 可以提供的帮助。

为什么并非所有终端命令都是安全的

命令行是一个强大的工具,但它不需要许可。当你告诉它删除一个文件时,它就会删除它:没有确认,没有回收站——文件立即消失了。它还提供了对许多可能被滥用的用于系统管理和自动化的强大工具的访问。众所周知,互联网骗子会使用看似无害的命令来响应建议请求,但在运行时,可能会通过擦除您的硬盘驱动器、安装恶意软件或以其他方式损坏您的计算机或数据来造成严重破坏。

简单的拼写错误或为不同系统设计的脚本在运行时也很容易产生意想不到的效果。因此,在运行之前,了解一下您在网上找到的看似有用的 Linux 命令或脚本的作用是值得的。

如何了解 Linux 命令的作用?

弄清楚命令或脚本的作用通常意味着分解其编写的 shell(通常是 Bash)的语法,然后阅读脚本调用的程序的指令。

例如,您可能需要弄清楚 Bash 条件语句和变量,并阅读多个命令的手册页(内置用户手册),然后才能完全理解特定脚本的工作原理以及它将对您的系统产生的影响。通常,Linux 专家会多年积累这些知识,但有一个厚颜无耻的捷径:ChatGPT。

首先,你不应该只是将一段代码粘贴到人工智能聊天机器人中并相信它所说的内容:人工智能会犯错误,而且它造成的错误比人们意识到的要多得多。但是,它可以为您提供理解复杂命令的立足点,并帮助您分解组件,以便您可以自己查找它们以了解它们的作用。

示例:使用 ChatGPT 帮助理解复杂的终端命令

我们关于从 Linux 命令行转换图像格式的文章包括许多使用循环的命令和不同的 ImageMagick 函数,乍一看令人困惑。当您要求 ChatGPT 对其进行分解时,会发生以下情况:

嘿 ChatGPT,你能把这个 Linux 命令分解成它的组件并解释一下吗?

for file in /path/to/source_directory/*.{jpg,jpeg,png}; do convert "$file" -gravity southeast -pointsize 20 -draw "text 5,5 'My Watermark'" "/path/to/output_directory/$(basename "$file")"; done

请尽可能包含相关手册页的链接。

结果:

for file in /path/to/source_directory/*.{jpg,jpeg,png}

迭代源目录中的所有 .jpg、.jpeg 和 .png 文件。

convert "$file"

运行 ImageMagick 的转换命令来处理当前文件。

-gravity southeast

将水印放置在图像的右下角。

-pointsize 20

将水印文本的字体大小设置为 20 磅。

-draw "text 5,5 'My Watermark'"

在相对于右下角的坐标 (5,5) 处添加文本“我的水印”。

"/path/to/output_directory/$(basename "$file")"

将处理后的图像以相同的文件名保存在输出目录中。

What it Does:

对于 /path/to/source_directory/ 中的每个图像文件,脚本:

  • 添加右下角水印。
  • 将修改后的图像保存在/path/to/output_directory/中。

手册页的快速链接:

  • Bash for 循环
  • ImageMagick 转换
  • ImageMagick 选项:-gravity-pointsize-draw
  • Bash 基本名称

还不算太寒酸!要求它提供手册页的链接(同样,这些是用户手册)也可以节省一些网络搜索。这将使您了解更多信息并验证聊天机器人的解释。

虽然任何有理智的人都对人工智能的过度使用持谨慎态度,但这是人工智能真正有用的一个场景(编写 Excel 宏是另一个场景)。请记住:人工智能聊天机器人是有用的工具,但它们可能会被信誉不良的来源所迷惑,或者只是编造一些东西。它们是解析信息的便捷方法,但始终要确认其输出。

相关文章: