知识阅读 计算机入门 第七章 命令行与终端操作
返回知识图谱
计算机入门 文炎同学 2024-03-18

第七章 命令行与终端操作

认识命令行、终端与 Shell,理解它为什么会成为开发、服务器和自动化中的常用入口。

ARTICLE / 08 SECTIONS
START READING08 SECTIONS

很多技术文章会让你打开一个黑色窗口,输入一行看起来陌生的文字。对第一次接触命令行的人来说,它像是电脑突然换了一种语言。

其实它没有神秘的权限。图形界面用按钮表达操作,命令行用文字表达操作。先把这个入口放回计算机的整体结构里,后面遇到环境配置、服务器和部署时,就不会只剩下照抄命令。

1. 命令行是什么

命令行是一种通过输入文字命令来操作计算机的方式。 你输入一条命令,系统或相关程序读取它、执行操作,再把结果显示出来。

比如查看当前所在的文件夹、列出文件、进入另一个文件夹,都可以通过命令完成。它们不是魔法,只是把原本需要点击完成的动作写成了更明确的文字。

先看三个最日常的例子:

cd

在 Windows 的命令提示符中,输入 cd 可以查看当前所在的位置。

dir

dir 会列出当前位置里的文件和文件夹。

cd Documents

这表示进入名为 Documents 的文件夹。它和在资源管理器里双击一个文件夹,本质上是在做同一件事。

命令行和图形界面解决的是同一类问题:让人向操作系统或应用程序发出指令。 区别只是表达方式不同。

2. 图形界面、终端和 Shell

这几个词经常一起出现,但它们说的不是同一件事:

名称可以怎样理解
图形界面(GUI)用窗口、图标、菜单和按钮操作电脑
终端承载命令行交互的窗口或应用
命令行(CLI)输入命令、接收文字结果的操作方式
Shell读取命令、解释命令并安排执行的程序

你打开 Windows Terminal、macOS 的终端或 Linux 的终端窗口后,看到的只是入口。真正理解你输入内容并调用系统能力的,是其中运行的 Shell。

因此可以先这样记:终端像窗口,命令行是交互方式,Shell 负责解释命令。

用户通过终端输入命令,Shell 解释命令并交给操作系统执行,结果再返回终端的过程用户通过终端输入命令,Shell 解释命令并交给操作系统执行,结果再返回终端的过程

图中最重要的不是记住每个程序名,而是看清方向:输入从终端进入,Shell 把它变成系统能执行的操作,结果再回到终端显示。

3. 为什么命令行会出现在入门路径里

日常使用电脑时,图形界面通常更直观。但在技术场景里,命令行有几个很实际的特点:

  • 一行文字可以准确描述一次操作;
  • 命令容易复制、记录和复现;
  • 多条命令可以组合成重复执行的流程;
  • 服务器常常没有完整的桌面界面;
  • 程序的启动信息、日志和错误信息通常会直接显示出来。

所以认识命令行,不是为了把电脑用得更复杂,而是为了理解很多技术工作到底从哪里开始。后面安装开发环境、启动网站、连接服务器和运行 AI 工具时,你会不断遇到这个入口。

4. 当前目录:命令从哪里开始

命令行里最容易造成困惑的概念之一,是当前目录。它表示命令行此刻所在的文件夹,可以理解为系统执行相对路径操作时的起点。

在图形界面里,你打开某个文件夹后再双击文件;在命令行里,程序也常常从当前目录寻找要使用的文件。如果文件不在那里,就会得到找不到文件的错误。前面 cd Documents 的例子,做的就是改变这个起点。

cd 的作用是切换目录。不同系统查看当前目录和文件列表的命令可能不同,但背后的概念相同:先确认自己在哪里,再决定要操作哪个文件。

这也是很多教程先让你进入项目文件夹的原因。命令本身可能没有写错,真正的问题只是命令执行时所在的位置不对。

5. 一条命令由什么组成

命令行里的文字通常可以拆成三个部分:

部分作用示例
命令指定要调用的程序或动作cddir
参数告诉命令要处理什么对象或采用什么选项文件夹名、文件名或其他选项
输出执行后返回的信息结果、提示或错误

例如 cd Documents 可以读成:cd 是命令,Documents 是告诉它要进入哪个文件夹的参数。执行后,命令行会显示结果,或在目标不存在时给出错误信息。

当然,真实命令还可能有选项、管道和重定向。但在入门阶段,先建立“命令 + 参数 + 输出”的感觉,比背下一长串格式更有用。

6. Windows、macOS 和 Linux 的命令不完全相同

命令行不是 Linux 独有的功能。Windows、macOS 和 Linux 都有命令行,只是默认的 Shell、命令名称和路径写法可能不同。

想做的事Windows CMD 常见写法macOS / Linux 常见写法
查看当前目录cdpwd
查看文件列表dirls
进入文件夹cd 文件夹名cd 文件夹名

这张表不是让你现在背命令,而是提醒你:复制教程前,要先确认它针对哪个操作系统和 Shell。 同一件事可能有不同写法,命令行也不等于 Linux。

Linux 在服务器领域很常见,因此服务器教程、部署文档和开发环境说明里经常出现 Linux 命令。但 Windows 上同样可以使用命令行,macOS 也有自己的终端环境。

7. 使用命令行时,怎样保持安全

命令行本身不是危险工具,危险通常来自不了解命令就直接执行。尤其是下面几类操作,要先确认来源、路径和影响范围:

  • 删除、清空或覆盖文件;
  • 修改系统目录和全局配置;
  • 安装来路不明的软件或脚本;
  • 使用管理员权限或 sudo
  • 连接远程服务器、上传文件或修改服务配置。

看到一条看不懂的命令时,可以先拆成命令、参数和选项,确认它会访问什么位置、修改什么内容。先理解再执行,比记住一条能跑通的命令更重要。

本章小结

  • 命令行是用文字命令操作计算机的一种方式,和图形界面只是入口不同。
  • 终端是窗口,命令行是交互方式,Shell 负责读取并解释命令。
  • 当前目录决定相对路径从哪里开始,很多“找不到文件”其实是位置不对。
  • 一条命令可以先按“命令、参数、输出”来理解;不同系统的命令和路径写法不完全相同。
  • 命令行之所以常见,是因为它准确、可复制、可记录,也适合服务器和自动化;执行陌生命令前要先确认影响范围。
LEARNING PATH

沿着这条路径继续

每一篇文章都是下一次理解的起点。

上一步第六章 浏览器与网站协作
当前阅读第七章 命令行与终端操作计算机入门
下一步第八章 本地与远程协作