在 Linux 中探索文件系统

CompTIABeginner
立即练习

介绍

在本实验中,你将学习使用命令行在 Linux 文件系统中进行导航所需的基础技能。你将接触到一些核心的 Shell 命令,例如用于显示当前工作目录的 pwd、用于切换目录的 cd 以及用于列出目录内容的 ls。这些命令构成了与任何 Linux 系统进行交互的基石。

在整个练习过程中,你将练习使用绝对路径和相对路径在目录之间移动。你还将探索一些实用的快捷方式,例如使用波浪号扩展(~)快速访问你的家目录(Home Directory),以及使用 ls -lls -a 等命令选项来查看详细的文件属性和隐藏文件。完成本实验后,你将为在 Linux Shell 环境中高效工作打下坚实的基础。

这是一个引导实验,提供了逐步的指令来帮助你学习和练习。请仔细遵循说明完成每个步骤并获得动手经验。历史数据表明,这是一个 初学者 级别的实验,完成率为 95%。它获得了学习者 99% 的好评率。

使用 pwd 和 cd 识别你的家目录

在这一步骤中,你将学习两个用于在 Linux 文件系统中导航的基础命令:pwdcd。我们将从识别你当前的工作目录开始,然后学习如何移动到你的家目录。

pwd(print working directory,打印工作目录)命令会告诉你当前在文件系统层级结构中所处的位置。当你在这个实验中启动一个新的终端会话时,你会被放置在一个名为 project 的特定目录中。让我们来验证一下。

在终端中执行 pwd 命令:

pwd

你应该会看到如下输出,这是你当前目录的绝对路径:

/home/labex/project

接下来,让我们探索 cd(change directory,切换目录)命令。此命令允许你在不同目录之间移动。Linux 系统上的每个用户都有一个特殊的「家」目录,这是存储个人文件的默认位置。对于你的用户 labex 来说,家目录位于 /home/labex

从文件系统的任何地方直接导航到家目录的一个便捷快捷方式是输入不带任何参数的 cd。现在尝试一下:

cd

这个命令通常不会产生任何输出,但它在后台静默地更改了你的位置。要确认你已经移动了位置,请再次使用 pwd 命令:

pwd

现在的输出将显示你家目录的路径:

/home/labex

在本实验的剩余部分,我们将在 ~/project 目录中进行工作。让我们导航回那里。波浪号(~)是一个特殊的快捷方式,代表你的家目录。因此,~/project 是一个从你的家目录开始,指向其内部 project 目录的路径。

执行以下命令返回到实验的工作目录:

cd ~/project

最后,最后运行一次 pwd,以确保你回到了下一步所需的正确起始目录。

pwd

你应该看到这个输出,确认你已回到起点:

/home/labex/project

你现在已经成功使用了 pwd 来查看所处位置,并使用 cd 移动到了家目录并返回。这些是在任何 Linux 系统上工作的必备技能。

使用绝对路径和波浪号扩展切换目录

在这一步骤中,你将通过使用绝对路径和波浪号扩展来扩展你的导航技能。这些是强大的快捷方式,允许你通过单个命令从文件系统的任何位置移动到任何目录。

绝对路径是从根目录开始的路径,根目录由单个正斜杠(/)表示。它提供了目录的完整位置。让我们使用绝对路径导航到 /etc 目录,该目录包含系统配置文件。

在你当前的目录(~/project)中,执行以下命令:

cd /etc

要确认你已成功更改目录,请使用 pwd 命令:

pwd

输出应显示新位置:

/etc

现在,让我们学习波浪号扩展。波浪号(~)是你家目录的特殊快捷方式。正如你在上一步中看到的,cd ~ 等同于 cd /home/labex。你也可以使用波浪号导航到另一个用户的家目录,但这需要相应的权限。

让我们通过导航到家目录中的一个目录来演示波浪号扩展。首先,前往你的家目录:

cd ~

使用 pwd 验证你的位置:

pwd

输出将显示:

/home/labex

最后,让我们使用代表你自己家目录的波浪号快捷方式返回到我们的工作目录 ~/project。这是一种非常常见且高效的返回项目文件的方法。

cd ~/project

最后运行一次 pwd,确保你回到了下一步所需的正确目录。

pwd

你应该看到熟悉的输出:

/home/labex/project

你现在已经掌握了使用绝对路径和灵活的波浪号扩展来切换目录,这显著提高了你在命令行中的导航效率。

使用 ls 和 ls -a 列出目录内容

在这一步骤中,你将学习如何使用 ls 命令查看目录的内容。你还将发现如何查看隐藏文件,它们是 Linux 文件系统的重要组成部分。

首先,确保你处于 ~/project 目录中。让我们创建几个文件以便有内容可以列出。我们将使用 touch 命令,如果文件不存在,它会创建一个空文件。

在终端中,执行以下命令来创建一个普通文件和一个隐藏文件:

touch sample.txt
touch .hidden_file

现在,使用基础的 ls 命令列出当前目录的内容:

ls

你会看到只列出了普通文件:

sample.txt

请注意,.hidden_file 没有显示出来。这是因为在默认情况下,ls 不会显示名称以点(.)开头的文件或目录。这些被称为「隐藏」文件或「点文件(dotfiles)」,通常用于用户特定的配置。

要查看所有文件,包括隐藏文件,你需要在 ls 中使用 -a(或 --all)选项。现在尝试一下:

ls -a

这一次,输出显示了目录中的所有内容:

.  ..  .hidden_file  sample.txt

现在的输出不同了。你可以看到我们的 .hidden_file。你还会看到两个特殊的条目:. 代表当前目录本身,而 .. 代表父目录(上一级目录)。你将在后面的步骤中学习更多关于使用 .. 进行导航的知识。

通过对比两次输出,你可以清楚地看到 ls -a 提供了目录内容的完整列表,这在你需要查找配置文件或其他隐藏项目时至关重要。

使用 ls -l 命令查看详细的文件属性

在这一步骤中,你将学习如何获取比文件名更多的文件信息。ls 命令有一个强大的选项 -l,它提供「长列表」格式,显示详细的文件属性,如权限、所有权、大小和修改日期。

确保你处于上一步创建文件的 ~/project 目录中。现在,执行带有 -l 选项的 ls 命令,查看非隐藏文件的详细视图:

ls -l

输出将比以前详细得多。你会看到 sample.txt 的一行信息,类似于这样:

total 0
-rw-r--r-- 1 labex labex 0 Oct 26 10:30 sample.txt

让我们分解这一行每个部分的含义:

  • -rw-r--r--:这代表文件的权限。第一个字符(-)表示它是一个普通文件。接下来的字符定义了谁可以读取、写入或执行该文件。
  • 1:该文件的硬链接数量。
  • labex:拥有该文件的用户。
  • labex:拥有该文件的组。
  • 0:文件的大小(以字节为单位)。因为我们是用 touch 创建的,所以它是空的。
  • Oct 26 10:30:文件最后一次被修改的日期和时间。
  • sample.txt:文件的名称。

就像 -a 选项一样,你可以将 -l 与之结合使用,以查看所有文件(包括隐藏文件)的详细信息。选项可以写成 ls -l -als -lals -al。它们的效果是一样的。

让我们试一下。执行命令查看所有文件的长列表:

ls -la

现在输出包含了隐藏文件和特殊目录 ...

total 8
drwxr-xr-x 2 labex labex 4096 Oct 26 10:35 .
drwxr-xr-x 3 labex labex 4096 Oct 26 10:20 ..
-rw-r--r-- 1 labex labex    0 Oct 26 10:30 .hidden_file
-rw-r--r-- 1 labex labex    0 Oct 26 10:30 sample.txt

请注意,对于 ...,权限字符串以 d 开头。这表示它们是目录,而不是普通文件。使用 ls -la 是你最常用的命令之一,用于全面了解目录内容及其属性。

使用相对路径 (..) 导航并返回家目录

在最后一步中,你将学习使用相对路径进行导航。与从根目录(/)开始的绝对路径不同,相对路径从你当前的工作目录开始。这通常是移动到附近目录的一种更快的方式。相对导航最重要的工具是特殊目录 ..,它始终代表父目录(当前目录的上一级目录)。

首先,确保你处于 ~/project 目录中。你可以通过 pwd 验证这一点。

pwd

输出应该是 /home/labex/project

现在,让我们移动到父目录,即 /home/labex。为此,请使用以 .. 作为参数的 cd 命令:

cd ..

这个命令告诉 Shell 切换到当前目录的父级。使用 pwd 确认你的新位置:

pwd

你会看到你现在处于家目录中:

/home/labex

你可以串联使用 .. 来一次性向上移动多个层级。例如,在 /home/labex 中运行 cd ../.. 将带你进入根目录(/)。

最后,让我们练习从系统任何地方返回家目录的最快方法。正如你在第一步中学到的,只需执行不带任何参数的 cd 命令,就始终能带你回到个人家目录。

让我们先移动到 /etc 目录:

cd /etc

现在,从 /etc 出发,通过一个简单的命令返回家目录:

cd

最后一次使用 pwd 验证你的位置。

pwd

输出确认你已回到家目录:

/home/labex

恭喜你!你现在已经练习了在 Linux 文件系统中导航最核心的 Shell 命令:pwd、带有绝对和相对路径的 cd,以及用于查看目录内容的 ls

总结

在本实验中,你学习了在 Linux 文件系统中导航的基础 Shell 命令。你练习了使用 pwd 来识别当前工作目录,以及使用 cd 来切换目录。这包括使用绝对路径、使用 .. 前往父目录的相对路径,以及使用波浪号(~)代表家目录的便捷快捷方式。你还了解了执行不带任何参数的 cd 是返回家目录的快速方法。

此外,你还探索了如何使用 ls 命令列出和检查目录内容。你使用了 -a 标志来查看包括隐藏文件在内的所有文件,并使用了 -l 标志来显示详细的长格式列表。这种详细视图提供了关于文件属性的关键信息,如权限、所有权、大小和修改日期,增强了你有效管理文件的能力。