命令行:用打字指挥电脑
从这一篇开始,你操作电脑的方式从「找到图标点一下」变成「打一行字按回车」。
这一页讲什么
- 终端是什么,为什么程序员离不开它;
- 命令、参数、当前目录这三个概念;
- 六个够用一整学期的基础命令;
- 敲错了怎么办,以及为什么命令行其实比鼠标更安全。
一、终端是一个只能打字操作的窗口
终端(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
几点需要看懂:
PS C:\Users\你的用户名>这一串叫提示符(prompt)。它告诉你两件事:现在用的是 PowerShell,以及你现在站在哪个目录里。d-----表示这是一个目录(directory)。如果开头是-a----,说明这是一个文件。Length是文件大小,目录这一栏通常是空的。
三、当前目录:命令行的「你现在站的位置」
命令行永远有一个当前目录(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 这类字样、或者带 > 重定向的。先看明白它要动哪个目录。
不确定的时候,先把命令贴进记事本,把每个词查清楚再执行。
六、几个立刻提升效率的小技巧
- 上下方向键翻出之前输入过的命令,不用重打。
- Tab 键自动补全文件名和目录名。打
cd gse按 Tab,会自动补成cd gse-practice。 - Ctrl + C 中止正在跑的命令。命令卡住不动时先按它。
- 清屏用
cls,屏幕太乱时用一下。
现在就做
打开 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 中止。这在后面的课程里经常用到,例如启动一个网页服务后想停掉它。