Skip to content

Linux 目录结构入门:根目录、家目录与相对路径 ​

Linux 服务器入门 · 第 02 篇 / 共 18 篇

看到 /home/lin/documents/notes.txt 时,可以从右往左读:文件叫 notes.txt,放在 documents 目录里;documents 属于用户 lin 的家目录。

本篇先读懂路径。还没有服务器也能阅读;实际命令等完成 SSH 登录后再试。示例用户名是 lin,你的账号可能不同。

从一个根目录开始 ​

Windows 常用 C:\、D:\ 表示不同盘符。Linux 把目录组织成一棵树,起点是 /;其他磁盘也可以挂载到这棵树上的目录。先记住自己的文件放在哪里,比背系统目录更有用。

Linux 目录从根目录分出 home、etc、var 和 tmp,个人练习文件放在 home 下的用户目录。

目录示意。家目录由账号配置决定,图中只列出本专题会遇到的分支。
位置先理解它的用途
/home/lin示例普通用户的家目录,可以在这里存练习文件
/etc许多系统和服务的配置文件所在位置
/var/log许多程序存放日志的位置,具体还要看配置
/tmp临时文件位置,内容可能被系统清理

根目录 /、管理员账号 root、root 常见的家目录 /root 是三件事。普通用户练习时不需要进入 /root。

两种写法,指向同一个位置 ​

以当前目录 /home/lin 为例:

text
/home/lin/documents/notes.txt    绝对路径,从 / 开始
         documents/notes.txt    相对路径,从当前目录开始

绝对路径不依赖你现在站在哪个目录;相对路径会随当前目录变化。在 /home/lin 下看 documents/notes.txt,与在 /tmp 下看同一串文字,寻找的位置不同。

pwd 可以确认当前位置。不要根据终端里很久以前的输出猜测当前目录。

~、. 和 .. 分别指哪里 ​

写法含义示例
~当前用户的家目录,由 Shell 展开cd ~
.当前目录./notes.txt
..上一级目录cd ..

cd / 进入根目录,cd ~ 回自己的家目录,cd .. 向上一级走。最后一种只退一层,不保证回到家目录。

在 Bash 中,"~/documents" 不会像 ~/documents 那样展开家目录。带空格的目录可以写成 "$HOME/my notes";这里 $HOME 是家目录变量,双引号保留路径里的空格。

文件名还会带来两个小变化 ​

本专题的 Ubuntu 文件系统区分大小写:Notes.txt 与 notes.txt 可以同时存在。遇到“找不到文件”,先检查拼写和大小写。

名字以点开头的文件或目录通常不出现在普通 ls 列表中,例如 .config。ls -a 才会把这类条目也列出来。“隐藏”不表示文件被加密或不能访问。

练习读路径:你在 /home/lin/documents,../backup 指向哪里?答案是 /home/lin/backup。先退到 /home/lin,再进入 backup。

路径、挂载与点目录的说明可对照 Ubuntu 命令行入门中的路径示例。