news 2026/6/23 19:19:44

Linux 绝对路径与相对路径详解——新手再也不迷路

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Linux 绝对路径与相对路径详解——新手再也不迷路

前言

在Linux中,无论是查看文件、修改配置,还是切换目录,都离不开“路径”——路径就像是文件和目录的“地址”,指引我们在庞大的文件系统中找到目标。对于新手来说,最容易混淆的就是“绝对路径”和“相对路径”,经常出现“明明文件存在,却找不到”的情况。今天,我们就来详细拆解这两种路径的概念、用法和区别,帮你彻底搞懂,再也不迷路。

核心前提:Linux的目录结构是单根目录树,所有文件和目录都从根目录(/)开始,路径就是从起始点到目标文件/目录的“路线”,不同的起始点,就对应不同的路径类型。


一、绝对路径:从根目录出发的“完整地址”

1. 定义

绝对路径是从根目录(/)开始,完整描述文件或目录位置的路径,无论当前处于哪个目录,绝对路径都能准确指向目标,具有唯一性。

简单来说,绝对路径就像是“家庭住址的完整写法”(如“北京市朝阳区XX街道XX小区XX号楼”),无论你在城市的哪个位置,只要按照这个地址,就能找到目标家庭。

2. 识别特征

绝对路径的最明显特征是:以正斜杠(/)开头,后面跟着各级目录,直到目标文件/目录。

3. 示例

- /home/ubuntu/Documents/report.txt:从根目录开始,依次进入home、ubuntu、Documents目录,最终指向report.txt文件;

- /etc/nginx/nginx.conf:指向/etc目录下nginx文件夹中的nginx.conf配置文件;

- /usr/bin/ls:指向/usr/bin目录下的ls命令文件。

截图指引:在终端输入命令ls /home/ubuntu/Documents(假设该目录存在),截图输出结果,标注出绝对路径/home/ubuntu/Documents,同时标注“以/开头”的识别特征。

4. 适用场景

1. 编写脚本或配置文件时:确保无论脚本从哪个目录执行,都能准确找到目标文件,避免因工作目录变化导致错误;

2. 系统服务配置时:系统服务需要确定性的路径引用,确保服务能正常加载配置文件;

3. 跨目录操作时:从任何位置访问特定文件,无需考虑当前所在目录。


二、相对路径:从当前目录出发的“快捷地址”

1. 定义

相对路径是相对于当前工作目录的路径,不从根目录开始,路径的有效性取决于当前所在的目录。

简单来说,相对路径就像是“小区内的快捷地址”(如“3号楼2单元501”),只有你在这个小区里,这个地址才有效;如果你换到其他小区,这个地址就无法找到目标。

2. 识别特征

相对路径的最明显特征是:不以正斜杠(/)开头,通常使用特殊符号来表示当前目录、父目录,简化路径写法。

3. 核心特殊符号(必记)

- . :表示当前目录(可以省略不写);

- .. :表示当前目录的上一级目录(父目录);

- ~ :表示当前用户的主目录(严格来说是绝对路径的特殊形式,简化写法)。

截图指引:在终端输入命令pwd(查看当前目录,假设为/home/ubuntu),再输入ls ./Documentsls ../home,截图两次命令的输出结果,标注“.”“..”的作用,让新手直观理解特殊符号的用法。

4. 示例(假设当前工作目录是 /home/ubuntu)

- Documents/report.txt:相对于当前目录,进入Documents目录,指向report.txt文件(等价于 ./Documents/report.txt);

- ../user1/files/data.csv:相对于当前目录,先回到上一级目录(/home),再进入user1/files目录,指向data.csv文件;

- ~/Downloads:指向当前用户的主目录下的Downloads目录(等价于 /home/ubuntu/Downloads);

- ./scripts/backup.sh:相对于当前目录,进入scripts目录,指向backup.sh脚本文件。

截图指引:1. 输入pwd截图当前目录(/home/ubuntu);2. 输入ls Documents截图输出结果(标注相对路径);3. 输入ls ~/Downloads截图输出结果(标注“~”的作用)。

5. 适用场景

1. 日常交互式操作时:比如在自己的主目录下创建、查看文件,使用相对路径更简洁,减少输入量;

2. 同一目录下的文件操作:比如复制当前目录下的文件到子目录,使用相对路径更高效;

3. 路径较短的场景:当目标文件/目录距离当前目录较近时,相对路径比绝对路径更简洁。


三、绝对路径与相对路径对比(一目了然)

特性

绝对路径

相对路径

起始点

从根目录(/)开始

从当前工作目录开始

识别特征

以 / 开头

不以 / 开头,可含 . 和 ..

唯一性

每个文件/目录有唯一绝对路径

不唯一,依赖当前目录

长度

通常较长

通常较短

适用场景

脚本、配置文件、系统服务

日常操作、快捷导航

截图指引:将此表格截图保存,标注出“绝对路径以/开头”“相对路径含.和..”两个核心识别点,同时用不同颜色标注两种路径的适用场景,方便新手快速区分和记忆。


四、实用操作技巧(新手必练)

1. 查看当前工作目录(pwd命令)

无论使用绝对路径还是相对路径,首先要知道自己当前在哪个目录,输入命令pwd(Print Working Directory),即可显示当前工作目录的绝对路径。

示例:输入pwd后,输出 /home/ubuntu,说明当前在ubuntu用户的主目录下。

截图指引:在终端输入pwd,截图输出结果,标注“当前工作目录”,让新手掌握查看当前位置的方法。

2. 切换目录(cd命令)

- 使用绝对路径切换:cd + 绝对路径,比如cd /etc/nginx,无论当前在哪个目录,都能直接进入/etc/nginx目录;

- 使用相对路径切换:cd + 相对路径,比如当前在/home/ubuntu,输入cd Documents,即可进入/home/ubuntu/Documents目录;

- 快捷切换:cd ~ 切换到当前用户主目录;cd .. 切换到上一级目录;cd - 切换回上一个工作目录。

截图指引:按顺序截图四个切换命令的执行过程:1.cd /etc/nginx(绝对路径切换);2.cd Documents(相对路径切换);3.cd ~(切换主目录);4.cd ..(切换上一级目录),标注每个命令的作用和输出结果。

3. 避免路径错误的小技巧

1. 使用Tab键自动补全:输入路径时,按Tab键可自动补全目录或文件名,减少输入错误;

2. 不确定路径时,先使用ls命令查看:比如不确定当前目录下有哪些子目录,输入ls,查看后再写相对路径;

3. 脚本中优先使用绝对路径:避免因脚本执行目录变化导致“找不到文件”的错误;

4. 检查路径是否存在:输入ls 路径,如果能显示目标文件/目录,说明路径正确。

截图指引:

1. 截图Tab键自动补全路径的过程(输入cd /et后按Tab键,自动补全为cd /etc);

2. 截图ls路径检查路径的界面(比如ls /home/ubuntu/Documents),标注“路径存在”的提示。


五、常见错误及解决方法

1. 错误:No such file or directory(没有该文件或目录)

原因:路径写错(比如字母大小写错误、目录层级错误),或当前目录与相对路径不匹配;

解决:使用pwd查看当前目录,确认路径拼写,或使用绝对路径重新操作。

2. 错误:Permission denied(权限不足)

原因:路径指向的文件/目录没有访问权限,比如普通用户访问/root目录;

解决:使用sudo命令获取root权限,或切换到有权限的用户。

3. 相对路径歧义:比如当前目录是/home/ubuntu,输入rm ../user1/file.txt,可能误删其他用户的文件;

解决:执行命令前,先使用pwd && ls ../user1/file.txt,确认路径正确后再操作。

截图指引:1. 截图“No such file or directory”错误提示窗口,标注“路径写错”的原因;2. 截图“Permission denied”错误提示窗口,标注“权限不足”的原因及解决方法;3. 截图pwd && ls../user1/file.txt的执行界面,标注“确认路径”的作用。

总结:绝对路径和相对路径没有优劣之分,关键是根据场景选择——需要确定性和可靠性,用绝对路径;需要简洁和高效,用相对路径。新手刚开始可以多使用绝对路径,避免出错,熟悉后再灵活运用相对路径,提高操作效率。记住:路径是Linux操作的基础,掌握好它,后续的命令行操作会顺畅很多。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/23 19:19:26

前端开发中大规模并发请求解决方案最佳实践

文章目录限制并发数使用p-limit库自己封装方法合并请求:减少请求数量缓存策略:避免重复请求防抖 / 节流(针对用户操作触发的请求)懒加载 / 分页加载前端大规模并发请求,指的是短时间内同时发起数十 / 上百个接口请求&a…

作者头像 李华
网站建设 2026/6/23 19:19:27

嵌入式开发中的代码分库技术与BL51指令详解

1. 代码分库程序中的函数定位原理 在嵌入式开发领域,代码分库(Code Banking)是一种常见的内存管理技术,尤其适用于具有有限直接寻址空间的微控制器架构。当程序规模超过单片机的线性地址空间时,开发人员需要将代码划分…

作者头像 李华
网站建设 2026/6/23 19:19:26

量子云计算资源分配:博弈论与优化实践

1. 分布式量子计算云中的资源分配挑战量子计算正在经历从实验室走向商业化的关键转型期。随着IBM Quantum、IonQ、Amazon Braket等量子云服务(QCaaS)的兴起,如何高效管理和分配量子计算资源成为亟待解决的核心问题。与经典云计算不同,量子资源分配面临三…

作者头像 李华
网站建设 2026/6/23 19:20:19

贰:Uboot 编译

名词解释 CROSS_COMPILE:交叉编译器 什么是 uboot uboot本质就是一个 bootloader ,Uboot 最重要的工作就是初始化 DDR,为系统的启动作准备。然后将Linux 镜像从外置 flash 拷贝到 DDR 中,才能启动。因为 Linux 是运行在 DDR 里面…

作者头像 李华
网站建设 2026/6/23 19:19:25

多相机拼接缝合线难题 | 工业全景视觉检测、盲区消除方案与 Python 工程化代码实现

目录 前言 一、多相机拼接与缝合线难题:核心原理全解析 1. 多相机拼接核心定义 2. 行业核心痛点:缝合线难题(根源拆解) 3. 核心技术指标(工业验收标准) 4. 多相机拼接核心流程(工业标准) 二、缝合线完美消除:四大工业级解决方案 方案 1:高精度棋盘格全局标定法…

作者头像 李华