在 Linux 中,简单的理解一个文件的路径,指的就是该文件存放的位置,例如,/home/cat 就表示的是 cat 文件所存放的位置。只要我们告诉 Linux 系统某个文件存放的准确位置,那么它就可以找到这个文件。

指明一个文件存放的位置,有 2 种方法,分别是使用绝对路径和相对路径。

Linux 系统中所有的文件(目录)都被组织成以根目录“/”开始的倒置的树状结构,如图 1 所示。

图 1 Linux系统文件组织结构示意图

绝对路径一定是由根目录 / 开始写起。例如,使用绝对路径的表示方式指明 bin 文件所在的位置,该路径应写为 /usr/bin,

测试代码如下:

[root@localhost ~]# bin

bash: bin: command not found

[root@localhost ~]# /usr/bin

bash: /usr/bin: is a directory

可以看到,如果仅传递给 Linux 系统一个文件名,它无法找到指定文件;而当将 bin 文件的绝对路径传递 Linux 系统时,它就可以成功找到。

和绝对路径不同,相对路径不是从根目录 / 开始写起,而是从当前所在的工作目录开始写起。使用相对路径表明某文件的存储位置时,经常会用到前面讲到的 2 个特殊目录,即当前目录(用 . 表示)和父目录(用 .. 表示)。

举个例子,当我们使用 root 身份登录 Linux 系统时,当前工作目录默认为 /root,如果此时需要将当前工作目录调整到 root 的子目录 Desktop 中,当然可以使用绝对路径,示例代码如下:

[root@localhost ~]# pwd

/root

[root@localhost ~]# cd /root/Desktop

[root@localhost Desktop]# pwd

/root/Desktop

可以看到,通过使用绝对路径,我们成功地改变了当前工作路径。但除此之外,使用相对路径的方式会更简单。因为目前处于 /root 的位置,而 Desktop 就位于当前目录下,所以:

[root@localhost ~]# pwd

/root

[root@localhost ~]# cd ./Desktop

[root@localhost Desktop]# pwd

/root/Desktop

此代码中,./Desktop 表示的就是 Destop 文件相对于 /root 所在的路径。

再举一个例子,如果以 root 身份登录 Linux 系统,并实现将当前工作目录由 /root 转换为 /usr 目录,有以下 2 种方式:

#使用绝对路径

[root@localhost ~]# pwd

/root

[root@localhost ~]# cd /usr

[root@localhost ~]# pwd

/usr

#使用相对路径

[root@localhost ~]# pwd

/root

[root@localhost ~]# cd ../usr

[root@localhost ~]# pwd

/usr

总之,绝对路径是相对于根路径 / 的,只要文件不移动位置,那么它的绝对路径是恒定不变的;而相对路径是相对于当前所在目录而言的,随着程序的执行,当前所在目录可能会改变,因此文件的相对路径不是固定不变的。

我们在访问文件或文件夹的时候,其实都是通过路径来操作的。两种路径在实际操作中能起到同等的作用。

在开始具体介绍之前,我们需要了解Linux的文件系统是谱系结构。在谱系的最上层是根文件夹。根文件夹由“/”来表示。根系下面有孩子文件夹,孩子的下面有孙子文件夹,以此类推。所有的文件就包含在这些文件夹里面。

绝对路径永远都是相对于根文件夹的。它们的标志就是第一个字符永远都是“/”。

相对路径永远都是相对于我们所处的文件夹位置。它们的第一个字符没有“/”。

下面是图例:

第一行:我们运行pwd(print working directory)来确认我们所处于的文件夹位置。

第三行:我们在相对路径下运行ls(list)。桌面就在我们所处于的文件夹里面。这条命令的结果会随着我们所处的不同位置而有所不同。如果我们有另一个用户叫做Bob,当我们在Bob的房子文件夹下,我们就得到在Bob 房子文件夹下的桌面文件夹下的所有文件了。

第六行:我们在绝对路径下运行ls。无论我们所处在什么路径下,我们得到的结果都会是一样的

Ubuntu 绝对路径和相对路径相关推荐

  1. ubuntu 18.04.4 - 显示文件路径

    ubuntu 18.04.4 - 显示文件路径 Ctrl + L: 显示文件路径 文件夹空白处 鼠标右键 --> 在终端打开 --> pwd

  2. Ubuntu Desktop LTS - 文件完整路径

    Ubuntu Desktop LTS - 文件完整路径 1. Ctrl + L (目录路径) /home/strong/darknet_work 2. pwd (目录路径) strong@foreve ...

  3. ubuntu终端不显示绝对路径

    ubuntu终端不显示绝对路径 在~路径下编辑 .bashrc即可: txx@txx:precomp$ sudo vim ~/.bashrc if [ "$color_prompt" ...

  4. linux 软链接 相对路径,Linux入门之ln命令创建软链接的绝对路径和相对路径详解(Ubuntu)...

    ln命令创建软链接的绝对路径和相对路径详解 简介 ln命令 总结 简介 Linux链接,可以分为硬链接与软链接:本文主要介绍软链接.(默认情况下,ln命令产生硬链接) 软链接文件类似于Windows的 ...

  5. ubuntu绝对路径和相对路径自动补全

    绝对路径和相对路径 1. 绝对路径 2. 相对路径 3. 绝对路径和相对路径的使用 4. 自动补全 能够使用绝对路径或者相对路径进行目录切换 1. 绝对路径 从根目录算起的路径叫做绝对路径 例如: c ...

  6. 基础 HTML之目录问题(相对路径和绝对路径区别)

    一.相对路径和绝对路径 相对路径:以引用文件之网页所在位置为参考基础,而建立出的目录路径.因此,当保存于不同目录的网页引用同一个文件时,所使用的路径将不相同,故称之为相对. 绝对路径:以Web站点根目 ...

  7. html站点相对路径,HTML的相对路径和绝对路径?

    HTML有2种路径的写法:相对路径和绝对路径. HTML相对路径(Relative Path) 同一个目录的文件引用 如果源文件和引用文件在同一个目录里,直接写引用文件名即可. 我们现在建一个源文件i ...

  8. python绝对路径的区别_python学习:绝对路径和相对路径

    大牛们应该对路径都很了解了,这篇文章主要给像我这样的入门小白普及常识用的,啊哈 下面的路径介绍针对windows,其他平台的暂时不是很了解. 在编写的py文件中打开文件的时候经常见到下面其中路径的表达 ...

  9. web应用的绝对路径和相对路径

    经常写web工程,就会涉及很多路径问题,今天复习下绝对路径和相对路径,以提醒自己下次不要以为路径问题头疼. 1.绝对路径和相对路径 相对路径:helloworld  ./helloworld ../h ...

最新文章

  1. SpringBoot conditional注解和自定义conditional注解使用
  2. EST:李芳柏团队揭示微生物介导的砷氧化耦合硝酸还原
  3. springboot 整合retry(重试机制)
  4. LOD优化策略-通篇
  5. python离线安装pip出现timeout_Python pip安装包出现timeout的解决办法,修改国内的镜像源...
  6. console vue 打包之后怎么去掉_Vue Cli 3 打包配置--自动忽略 console.log 语句
  7. php有ssm框架吗,SSM框架-企业门户网站-1-工程构建
  8. Swift3.0语法1
  9. 贪心算法c语言部分背包,c语言背包问题_背包问题贪心算法_背包问题 贪心算法(13)...
  10. 转:iris数据集及简介
  11. keil中C语言取反操作结果是32位数
  12. [亲测]Oracle数据库约束
  13. android编辑keynote,Keynote添加和编辑母版幻灯片
  14. 芋道 Spring Cloud Netflix 注册中心 Eureka 入门
  15. 线性代数中的线性方程组
  16. d盘无法格式化怎么解决
  17. 第1章 开篇-为什么要做CI/CD?
  18. 什么是大数据? 大数据有哪些应用场景?
  19. sublime text3安装python插件和flake8_让你用sublime写出最完美的python代码--windows环境-搜云库...
  20. 计算机教学情景教学法列子,丛彩虹的作业-提交一个信息技术与学科整合的教学设计案例。-第三学年 赤峰市中小学、幼儿园学科带头人远程培训(2014-2015年度)-中国教师研修网...

热门文章

  1. Photoshop(PS)2021详细安装教程
  2. ESP32 partition(分区表)(15)
  3. 基于java的课程设计管理系统设计论文
  4. Java中List排序的3种方法
  5. EA 序列图 sequence 画法
  6. SQL注入-报错注入
  7. 仙剑四,我该为谁而哭—写在上海软星解散之后
  8. Oracle客户端本地连接配置
  9. 转--object-C 与lua使用wax交互
  10. 拿Nginx 部署你的静态网页