生成式软件工程 · 领学讲义
搜索

命令行:用打字指挥电脑

从这一篇开始,你操作电脑的方式从「找到图标点一下」变成「打一行字按回车」。

这一页讲什么
  • 终端是什么,为什么程序员离不开它;
  • 命令、参数、当前目录这三个概念;
  • 六个够用一整学期的基础命令;
  • 敲错了怎么办,以及为什么命令行其实比鼠标更安全。

一、终端是一个只能打字操作的窗口

终端(terminal)也叫命令行窗口、控制台,就是一个纯文字的窗口。 你在里面打一行字,按回车,电脑执行,然后把结果打回给你。没有按钮,没有图标,没有进度条。

Windows 上自带两个:cmd 与 PowerShell。两者都能用, 本讲义统一用 PowerShell,因为它更新的版本功能更全,输出也更好读。

生活类比 用鼠标操作像在食堂指着一盘菜说「我要这个」;用命令行像对着窗口报菜名「一份土豆丝,不要辣」。 指的方式直观但只能选看得见的东西;报菜名虽然要先背几个词,但能说清楚「不要辣」这种细节, 而且可以一次性把十份订单写成一张单子交过去。

二、命令的三段结构

一行命令通常长这样:

命令名 参数1 参数2

以 dir 为例,它干的事是「列出当前目录里的东西」:

PS C:\Users\你的用户名> dir

    目录: C:\Users\你的用户名

Mode                 LastWriteTime         Length Name
----                 -------------         ------ ----
d-----        2026/9/1     10:23                Desktop
d-----        2026/8/28     15:02                Documents
d-----        2026/9/1     09:11                Downloads

几点需要看懂:

三、当前目录:命令行的「你现在站的位置」

命令行永远有一个当前目录(current directory)。不带完整路径的文件名,都相对于这个位置解释。 这一点和资源管理器一样,只是资源管理器用地址栏显示位置,命令行用提示符显示位置。

换位置的命令是 cd,change directory 的缩写:

PS C:\Users\你的用户名> cd gse-practice
PS C:\Users\你的用户名\gse-practice>

注意提示符变了,说明已经进去了。想回上一层,用两个点:

PS C:\Users\你的用户名\gse-practice> cd ..
PS C:\Users\你的用户名>

.. 在路径里表示「上一层目录」。这个写法在 Windows、Linux、macOS 上都通用。

关键结论 命令行里出现错误「找不到文件」,绝大多数情况是当前目录不对。 先用 pwd(PowerShell 里也可以用 Get-Location)确认自己在哪, 再用 dir 看看这里有什么,比反复改命令有用得多。

四、六个够用的基础命令

命令作用例子
dir列出当前目录内容dir
cd 路径切换目录cd gse-practice
mkdir 名字新建目录mkdir week1
type 文件名把文件内容打到屏幕上type note.txt
copy 源 目标复制文件copy note.txt note-backup.txt
del 文件名删除文件del note-backup.txt

Linux 上对应的名字略有不同,第 4 篇会给出对照表。现在先把 Windows 这套用熟。

五、敲错了会怎样

先给结论:打错命令名只会得到一行错误提示,不会有任何破坏。

PS C:\Users\你的用户名> dr
dr : 无法将「dr」项识别为 cmdlet、函数、脚本文件或可运行程序的名称。

真正需要小心的是参数写错。例如 del note.txt 里文件名的拼写决定了删掉哪个文件。 这也是命令行其实比鼠标更安全的地方:删除命令只删你写出来的那一个目标, 不像鼠标拖拽那样可能把整个目录拖进别的目录。它不会在你没看见的地方偷偷改动别的文件。

常见坑 不要复制网上看来的命令直接回车,尤其是带 rm -rf、del /s、 format 这类字样、或者带 > 重定向的。先看明白它要动哪个目录。 不确定的时候,先把命令贴进记事本,把每个词查清楚再执行。

六、几个立刻提升效率的小技巧

现在就做 打开 PowerShell(开始菜单搜索 powershell),依次执行:
① cd C:\Users\你的用户名\gse-practice;
② mkdir week1,再 dir,确认多了一个 week1;
③ cd week1,再 cd ..,观察提示符变化;
④ type note.txt,确认能看到上一篇写的那句话。
四步都成功,说明你已经能用命令行在目录里自由移动了。

自测

1. 提示符显示 PS C:\Users\me\Desktop>,我执行 cd gse-practice,它会在哪找这个目录?
在当前目录下找,也就是 C:\Users\me\Desktop\gse-practice。如果这个目录不存在,会报「找不到路径」。想跳到别处,必须写完整路径或者先用 cd .. 走上去。
2. dir 列表里 d----- 和 -a---- 有什么区别?
开头是 d 表示目录,不是文件;-a---- 是文件。看到 d 就知道还得再进去一层才能看到里面的文件。
3. 为什么说命令行删文件比鼠标拖拽安全?
删除命令只作用于你写出来的那一个明确目标,执行前你自己就把目标写清楚了;鼠标拖拽可能在没注意到的情况下把文件拖到别的目录,或拖进回收站之外的地方。命令行的风险集中在参数写错,而参数是可见、可复核的。
4. 命令跑起来一直不结束,怎么办?
按 Ctrl + C 中止。这在后面的课程里经常用到,例如启动一个网页服务后想停掉它。