Linux 中的绝对路径和相对路径,有什么区别?

路径是 linux 系统中一个非常重要的概念,每个 linux 用户都应该了解它。

它是指文件和目录在 Linux 目录结构中的位置,由名称和斜杠组成。通过路径,我们可以快速找到文件或目录的位置。

/home/abhishek/scripts

登录后复制

作为一个系统用户,当您想要访问某个文件或目录,或者必须为命令或脚本指定文件或目录的位置时,就会使用路径。

cat /home/abhishek/scripts/my_script.sh

登录后复制

请记住,如果路径以斜杠“/”开头,则第一个斜杠表示根,路径中的其余斜线只是分隔符。初学者经常混淆斜杠和分隔符斜杠。

Linux 中的绝对路径和相对路径,有什么区别?

在上图中,第一个路径是以根路径(/)开始的,第二个路径不是以 / 开始的。这两种写法都是正确的,第一个是绝对路径,第二个是相对路径。

Linux中的绝对路径和相对路径

绝对路径始终从根目录(/)开始,比如:

/home/abhishek/scripts/my_scripts.sh

登录后复制

相对路径从当前目录开始。比如,如果你在 /home 目录中,希望访问 my_script.sh 文件,那么访问的路径应该是:

abhishek/scripts/my_scripts.sh

登录后复制

理解绝对路径和相对路径之间的差异

我们都知道Linux中目录结构是一个树,从根(/)开始,然后产生分支。

假设我们现在目录abhishek中,并且希望访问文件my_scripts.sh,如下图所示两种路径的表示:

Linux 中的绝对路径和相对路径,有什么区别?

假设我们使用 ls 命令查看 my_script.sh 的文件信息,那么使用绝对路径:

ls -l /home/abhishek/scripts/my_script.sh

登录后复制

然后,相对路径:

ls -l scripts/my_script.sh

登录后复制

那么,以上两种方式,除了文件路径不一样以外,其他的完全一样:

Linux 中的绝对路径和相对路径,有什么区别?

注:在Linux中,文件名区分大小写。可以有大写、小写、数字、点、中划线、下划线以及除了斜杠(/)之外的大多数字符。斜杠(/)作为保留字符,用于根目录和用于分割路径中的目录。

使用带有 . 和 .. 目录的相对路径

**
**

有两种特殊的相对路径:

.****(一个点):表示路径中的当前路径;..****(两个点):表示父目录,即上一级目录。

如下图,我们要从 abhishek 目录中,到 prakash 目录中去。

Linux 中的绝对路径和相对路径,有什么区别?

切换目录,使用 cd 命令。如果使用绝对路径,可以这样:

cd /home/prakash

登录后复制

使用相对路径的话 ,需要用到特殊的相对路径 .. :

cd ../prakash

登录后复制

为什么要使用 .. 呢?因为相对路径要从当前目录开始,我们需要告诉 cd 命令向上一级,将我们带到 /home 目录,然后从那里在进入到 prakash 目录。

绝对路径始终以 / 开始,并且与当前位置无关;相对路径取决于当前的位置。

绝对路径和相对路径,应该使用哪个呢?

老实说,这个问题没有直截了当的答案。这要视情况而定。

如果你当前所在的目录层次结构比较深,并且需要向上或者向下一级移动,那么使用相对路径会更简单。

假设你位于

/home/username/programming/project/interface/src/header 目录中,并且需要访问 /home/username/programming/project/interface/bin 目录中的某些内容。使用相对路径可以避免键入所有冗长的目录名,只需在此处使用.././bin即可。

但是,如果你要从 /home/username/programming/project/interface/src/header目录访问 /usr/bin 目录中的某些内容,那么使用 ../../../../../../usr/bin 会比较麻烦,这个时候使用绝对路径更方便。

另一种情况,是在脚本或者程序中使用路径。如果位置是确定的,那么就使用绝对路径;如果项目中有多个文件夹,并且需要在其中之间切换,那么此处需要使用相对路径,因为你不确定最终用户会将程序放在什么地方。

以上就是Linux 中的绝对路径和相对路径,有什么区别?的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2203944.html

(0)
上一篇 2025年2月26日 00:46:53
下一篇 2025年2月26日 00:47:23

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • Swagger在Linux下如何进行版本控制

    本文介绍如何在Linux环境下实现Swagger API的版本控制。 以下步骤将指导您完成配置: 一、准备工作:安装必要组件 首先,确保您的Linux系统已安装Node.js和npm包管理器。可以使用以下命令进行安装(以Debian/Ubu…

    2025年3月28日
    000
  • Linux中FileZilla如何使用FTP over TLS

    在Linux系统下安全地使用FileZilla进行FTPS(FTP over TLS)连接,请按照以下步骤操作: 第一步:安装FileZilla 首先,确保您的Linux系统已安装FileZilla客户端。 您可以通过您的发行版软件包管理器…

    2025年3月28日
    100
  • Yum在Linux中的权限设置

    Linux系统中,Yum包管理器负责软件包的安装、更新和删除。为了保障系统安全,妥善配置Yum权限至关重要。以下建议可有效增强Yum的安全性: 使用特权用户操作Yum: 只有root用户或拥有sudo权限的用户才能执行Yum命令。这是因为Y…

    2025年3月28日
    100
  • LNMP如何优化数据库查询

    提升LNMP(Linux、Nginx、MySQL、PHP)应用性能的关键在于数据库查询优化。本文将介绍一系列优化策略,助您显著提升数据库效率。 一、索引策略: 为频繁用于WHERE、ORDER BY、GROUP BY子句的字段创建索引,加速…

    2025年3月28日
    100
  • 如何在Linux中调试Compton问题

    本文提供一份在Linux系统中排查Compton问题的实用指南。 第一步:确认Compton运行状态 首先,验证Compton是否已启动: ps -e | grep compton 登录后复制 若未运行,则使用以下命令启动: compton…

    2025年3月28日
    100
  • Yum如何管理Linux软件组

    本文介绍如何使用Yum(Yellowdog Updater, Modified)高效管理Linux软件组。Yum是一个强大的命令行工具,用于基于RPM的系统中管理软件包,包括安装、更新、卸载和查询等操作,并支持软件组的管理。软件组是相关软件…

    2025年3月28日
    100
  • Linux回收站能设置有效期吗

    Linux系统回收站(Trash)的有效期并非系统自带功能,其管理主要由桌面环境(如GNOME、KDE)或文件管理器(如Nautilus、Dolphin)决定。 要实现类似回收站文件过期自动删除的功能,需要借助其他方法。 以下几种方法可以帮…

    2025年3月28日
    100
  • Linux怎样设置回收站大小

    本文介绍如何在Linux系统中调整ext4文件系统的回收站大小。请注意,此方法仅适用于ext4文件系统,其他文件系统可能需要不同的方法。 操作前务必备份重要数据,以避免数据丢失或损坏。 准备工作:安装e2fsprogs 首先,确保你的系统已…

    2025年3月28日
    100
  • mount命令挂载ntfs分区的方法

    在Linux系统中挂载NTFS分区,需要先安装ntfs-3g驱动程序。以下步骤将指导您完成安装和挂载过程: 一、安装ntfs-3g驱动 根据您的Linux发行版选择合适的安装命令: Debian/Ubuntu系统: sudo apt upd…

    2025年3月28日
    100
  • Linux FTPServer如何设置防火墙

    在Linux系统中,为FTP服务器配置防火墙通常需要以下步骤: 第一步:确定FTP端口 FTP服务默认使用两个端口: 端口21: 用于控制连接(命令通道)。端口20: 用于数据传输(数据通道)。 此外,如果使用被动模式(PASV)FTP,还…

    2025年3月28日
    100

发表回复

登录后才能评论