0.13 第一条命令:在终端里导航与查看文件
第〇篇【零基础预科】免费。这一篇动手,学会在命令行里"走路"和"看东西"。
一、先打开终端
- Linux:打开 Terminal(或 SSH 连上服务器);
- Windows:按
Win键输入PowerShell回车,打开 PowerShell。
很多人第一次找不着入口:按 Win 键之后直接打字就行,系统会自动在搜索框里收,不用先用鼠标去点搜索框;搜到带蓝黑色图标的"Windows PowerShell"回车即可。别想着从开始菜单一层层翻文件夹找,记住"按 Win → 打 powershell → 回车"这三个动作就够了。
打开后会看到一个提示符,可能显示你的用户名和当前位置,光标在闪,等你输入。
你可能会问:这个提示符到底长什么样?在 Linux 上连上服务器,它通常是
ubuntu@vm:~$这样一串——开头是用户名,@ 后面是机器名,冒号后面是当前所在目录,最后那个$表示"轮到你打字了"。PowerShell 里则是PS C:\Users\yibo>。别被这串字符唬住,它只是在告诉你"你是谁、你在哪",真正要盯紧的只有当前路径那一截。第一次敲完命令没反应,多半是你压根没把光标点进终端窗口里。
二、四个导航命令(Linux)
| 命令 | 全称/含义 | 作用 |
|---|---|---|
pwd | print working directory | 显示现在在哪个目录 |
ls | list | 列出当前目录里的文件和文件夹 |
cd 目录名 | change directory | 进入某个文件夹 |
cd .. | — | 返回上一级 |
这里有个概念越早清楚越好:路径分两种。像 /home/ubuntu/gysec 这种以 / 开头、从根一路写全的,叫绝对路径,不管你现在待在哪个目录,它都指向同一个地方;而 gysec、docs/learn 这种不带斜杠开头的,是相对路径,指"相对于你当前所在的目录"。这就是为什么同样敲一句 cd gysec,你在 /home 下和在别处进的可能是两个完全不同的文件夹——进之前 pwd 看一眼,本质就是在确认"这个相对,是相对哪儿"。
动手流程示例:
pwd # 先看自己在哪,例如 /home/ubuntu
ls # 看看这里有什么
cd gysec # 进入 gysec 文件夹
pwd # 现在显示 /home/ubuntu/gysec
ls # 看 gysec 里的内容
cd .. # 返回 /home/ubuntu刚上手最容易踩的一个坑:你敲 cd 文件夹名 时打错了字、或者那个文件夹根本不在当前目录,系统不会替你猜"你想进哪个",而是直接报错——Linux 是 bash: cd: xxx: No such file or directory,PowerShell 是 Cannot find path 'xxx' because it does not exist。这时别反复回车硬试,先 ls 看看当前目录到底有哪些名字,再照着实有的名字重新 cd。养成一个节奏:进之前先 ls 一眼,比进去发现不对再退出来省事得多。
常用小变体
ls -l # 详细信息(权限、大小、时间)
ls -a # 连隐藏文件一起显示
cd ~ # 回到自己的家目录(/home/ubuntu)
cd / # 回到根目录这里有两个细节值得多看一眼。ls -l 列出来每行开头那串类似 drwxr-xr-x 的字符,第一个字母是 d 就表示这一行是个目录(directory),是文件就是 -,后面的字母跟权限有关——预科阶段你只要认得"开头是 d 还是 -"就够用,不用背。ls -a 里的 a 是 all,它会把"名字以点开头"的隐藏文件也列出来;Linux 里这种文件默认不显示,像 .bashrc 这类配置文件就是故意藏起来的,并不是真的消失了。至于 cd ~ 里的 ~,是"家目录"的简写,相当于你在 Windows 资源管理器里点"此电脑 → C 盘 → Users → 你自己"那一层;而 cd / 是整个文件系统的最根,Windows 里没有完全对应的东西(它每个盘符各自有根)。
三、Windows PowerShell 对应
PowerShell 提供了功能相同的命令,甚至兼容常用别名:
| 目的 | PowerShell(别名也可用) |
|---|---|
| 看当前位置 | pwd(Get-Location) |
| 列内容 | dir 或 ls(Get-ChildItem) |
| 进入目录 | cd 名字(Set-Location) |
| 返回上一级 | cd .. |
| 查看文件内容 | cat 文件名(Get-Content) |
你会发现
pwd、ls、cd在两边都能用,这正是为了降低学习成本。
有一个差异第一次用一定会撞上:在 PowerShell 里敲 cd /,它回到的是"当前盘的根目录"——你还在 C 盘就到 C:\,而不是 Linux 那个包揽一切的单一根目录。另外 Linux 严格区分大小写,cd Gysec 和 cd gysec 是两码事;PowerShell 基本不区分,你大小写错了它也照样认。现在混用没关系,等以后真正连到 Linux 服务器敲命令,再把大小写这根弦绷紧即可。
四、查看文件内容
Linux:
bashcat 文件.txt # 一次性把内容打印到屏幕 less 文件.txt # 分页查看(空格翻页,q 退出)PowerShell:
powershellcat 文件.txt # Get-Content,显示内容
用 cat 看文件有个小尴尬:文件一大,内容会"唰"地一屏刷过去,屏幕只留下最后几十行。这时要么改用 less(进去后按空格往下翻、按 q 退出),要么按需截取——head -n 20 文件名 只看前 20 行,tail -n 20 文件名 只看末尾 20 行。还有一种情况:你误把一张图片或一个程序 cat 出来,屏幕会蹦出一堆乱码、甚至"嘀"地响一声,这不是终端坏了,而是你在"读"一个本来就不是给人看的二进制文件,按 q 或 Ctrl+C 退出来重新挑对文件就行。
五、两个救命好习惯
- Tab 自动补全:输入文件名/命令的前几个字母,按
Tab,终端会自动补全;补不全再按一次看候选。这样既快又不会拼错长路径。 - ↑ 历史命令:按上箭头调出之前的命令,回车重跑,或改参数后再跑。
说个真实的打字场景:你刚敲完一长串 cd /home/ubuntu/gysec/docs/learn,回车后系统报 No such file,多半是哪个字母拼错了。这时别整行重打——按 ↑ 把刚那条调出来,用左右箭头移到拼错的位置改一个字母就行(按 Home 直接跳到行首、End 跳到行尾)。这种小习惯一旦养成,后面几百条命令敲下来,能省掉大量重复劳动。
六、练习任务(建议亲手做)
在你自己的电脑上:
- 打开 PowerShell,输入
pwd、ls; - 用
cd进入一个熟悉的文件夹(如 Desktop),再ls; - 用
cd ..返回; - 找一个文本文件,用
cat查看; - 全程试着用 Tab 补全和 ↑ 翻历史。
做这几步时,十有八九会撞见两种报错:一种是 bash: cd: xxxx: No such file or directory,说明你要进的名字不对;另一种是 cat: 文件名: 没有那个文件或目录,说明当前目录下压根没这个文件。解决办法都一样——先 pwd 确认自己在哪,再 ls 看看周围有什么,而不是反复猜着回车。把"pwd → ls → cd"这三步当成肌肉记忆,后面每一篇命令你都会反复用到。
命令行是"手艺",看懂和会敲是两回事,务必亲手多练。
七、本篇小结
- 导航四件套:pwd 定位、ls 列内容、cd 进入、cd .. 返回。
- PowerShell 里 pwd/dir(ls)/cd 同样适用。
- 查看文件用 cat/less(Linux)或 cat(PowerShell)。
- 善用 Tab 补全、↑ 历史;多敲形成肌肉记忆。
下一篇 0.14 进入网络世界:两台机器到底是怎么连起来的。