8·基础入门入门

ls、cd、pwd 基本导航

lsnavigation

第 8 课 - ls、cd、pwd 基本导航

学习目标

完成本课学习后,你将能够:

  1. 理解 Linux 文件系统中的路径概念,并使用 pwd 命令查看当前所在位置。
  2. 熟练使用 cd 命令在目录之间进行切换,包括使用绝对路径、相对路径和特殊符号。
  3. 掌握使用 ls 命令查看目录内容,并能通过常用选项(如 -l, -a, -h)获取详细信息。

核心概念

1. 路径:你在文件系统的“地址”

在 Linux 中,每一个文件和目录都有一个唯一的“地址”,这就是路径。它分为两种:

  • 绝对路径:以根目录 / 开头的完整路径,就像一个全球唯一的门牌号。例如:/home/username/documents/report.txt。无论你当前在哪里,这个路径都指向同一个文件。
  • 相对路径:相对于你当前位置的路径。它不以 / 开头,就像你对别人说“往前走,在第二个路口左转”。例如:如果你在 /home/username,那么 documents/report.txt 就是一个相对路径。

2. 三个基本导航命令

想象你在一个巨大的文件仓库里:

  • pwd (Print Working Directory):打印工作目录。它会告诉你:“你现在站在这里”。
  • cd (Change Directory):改变目录。它就是你行走的双腿,带你去想去的地方。
  • ls (List):列出目录内容。它就像你的手电筒,照亮当前房间,让你看到里面有什么文件和子目录。

代码示例

让我们通过一个完整的流程来实践这些命令。请打开你的终端(Terminal)。

# 1. 首先,看看我们“站”在哪里 (使用 pwd)
$ pwd
/home/your_username  # 输出可能类似于此,这是你的家目录

# 2. 使用 ls 查看当前目录下有什么
$ ls
Desktop  Documents  Downloads  Music  Pictures  Public  Templates  Videos

# 3. 进入 (cd) Documents 目录(使用相对路径)
$ cd Documents
$ pwd
/home/your_username/Documents  # 现在位置变了

# 4. 再次使用 ls,但这次加上 `-l` 选项 (long listing) 查看详细信息
$ ls -l
total 0
# 你可能会看到类似这样的输出,显示了文件/目录的权限、所有者、大小、修改时间等。这里因为是空目录,所以 total 0。

# 5. 返回上级目录,可以使用 `cd ..`
$ cd ..
$ pwd
/home/your_username  # 又回到了家目录

# 6. 快速回到你的家目录(无论你在哪里),使用 `cd ~` 或直接 `cd`
$ cd /tmp  # 先假设我们去了一个叫 /tmp 的系统目录
$ pwd
/tmp
$ cd ~
$ pwd
/home/your_username  # 完美返回

# 7. 使用 `cd -` 可以在最近的两个目录之间快速切换
$ cd /tmp
$ pwd
/tmp
$ cd -  # 切换回上一次的目录
/home/your_username
$ pwd
/home/your_username
$ cd -  # 再切换,又回到 /tmp
/tmp

# 8. 使用 `ls -a` 查看隐藏文件(以 . 开头的文件)
$ ls -a
.  ..  .bash_history  .bashrc  .profile  Desktop  Documents ... # 你会看到很多以点开头的隐藏配置文件

# 9. 结合 `-l` 和 `-a`,并且使用 `-h` (human-readable) 使文件大小更易读
$ ls -lah
# 这将显示所有文件(包括隐藏文件)的详细列表,并且文件大小会显示为 K, M, G 等单位。

实践练习

练习 1:基础定位

  1. 打开终端,执行一条命令查看你当前所在的目录。
  2. 执行 cd / 进入系统根目录。
  3. 使用 ls 命令查看根目录下有哪些主要的目录(如 bin, home, etc)。
  4. 最后,执行 cdcd ~ 返回你的家目录。

练习 2:相对路径探索 假设你的家目录 (~) 下有目录结构如下:

~/Lab/
    ├── data/
    │   └── sample.txt
    ├── logs/
    └── notes/
  1. 请通过命令行创建这个结构(提示:使用 mkdirtouch 命令)。
  2. 从你的家目录出发,使用一条 cd 命令(相对路径)进入 Lab/data/ 目录。
  3. data/ 目录下,使用 ls -l ../ 命令。解释一下你看到了什么?为什么?

练习 3:综合应用

  1. 从你的家目录开始,进入 /var/log 目录(绝对路径)。
  2. 使用 ls -lh 查看该目录下的文件。你认识几个?(例如 syslog, auth.log
  3. 使用 cd - 切换回你之前的目录。
  4. 使用 cd 回到家目录。

常见错误

  1. 混淆绝对路径和相对路径

    • 错误:你在 /home/user 目录下,想进入 /home/user/docs,却输入了 cd home/user/docs。这会提示 No such file or directory,因为它会从当前目录下找一个叫 home 的目录,而这里没有。
    • 正确:应该使用 cd /home/user/docs(绝对路径)或 cd docs(相对路径)。
  2. 拼写错误

    • Linux 文件系统大小写敏感Documentsdocuments 是两个不同的目录。使用 Tab 键可以自动补全,避免拼写错误。
    • 错误:cd Documents vs cd documents
  3. ls 输出的误解

    • 使用 ls -l 看到的 . 代表当前目录,.. 代表上级目录。它们是导航的快捷方式。
    • ls -a 显示的 ... 也是条目,不要忽略它们。
  4. 权限不足

    • 尝试 cd 到一些系统目录(如 /root)可能会失败并提示 Permission denied。这是正常的,需要管理员(root)权限才能访问。初学者应主要在自家目录 (~) 及其子目录中练习。

小结

本课我们掌握了在 Linux 文件系统中“行走”的三个基本工具:

  • pwd:你的“GPS”,随时告诉你身处何方。
  • cd:你的“双腿”,利用绝对路径(完整地址)或相对路径(相对位置)在目录间穿梭。记住 ~(家)、..(上级)、-(上一个)这些快捷方式。
  • ls:你的“手电筒”,结合 -l(详细)、-a(全部/隐藏)、-h(可读大小)等选项,可以看清目录里的内容。

熟练掌握这些命令是进行任何 Linux 系统管理和操作的第一步。下一课,我们将深入了解在 ls -l 输出中看到的不同文件类型及其含义。

练习编辑器

rust
Loading...

继续学习

完成本课后,建议继续学习下一课「文件类型与扩展名」 以巩固所学知识。