相对路径和绝对路径及根目录(2013-06-24 12:00)

本文详细解释了文件系统的根目录概念及相对路径与绝对路径的应用方法,包括如何在不同目录层级间进行引用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

自我总结:

1、根目录

百科名片
根目录指逻辑驱动器的最上一级目录,它是相对子目录来说的。打开“我的电脑”, 双击C盘就进入C盘的根目录,双击D盘就进入D盘的根目录。其它类推。
       根目录在文件系统建立时即已被创建,其目的就是存储 子目录(也称为文件夹)或 文件的目录项(也就是文件元数据)
       根目录是没有被取名字的,/是路径分隔符,所以路径/etc/u01/a.txt中的第一个/是属于根目录,第二个/属于etc,即etc/  ,第三个/属于u01,即u01/。(/etc/u01/a.txt是Linux下的路径表示方式)
       /是路径分隔符,且根目录是无名的,所以路径/etc/u01/a.txt中的第一个/是属于根目录,第二个/属于etc,即etc/  ,第三个/属于u01,即u01/。
题外话:需要注意的是,由于现今 U盘病毒盛行,进入U盘的根目录最好不要 双击,而建议用鼠标右键单击U盘图标,然后选择“打开”进入根目录,或从 地址栏选取U盘的地址打开!

 

2、同目录的文件的引用

"."——代表当前所在的目录。

3、表示上级目录

../表示源文件所在目录的上一级目录,../../(这个整体)表示源文件所在目录的上上级目录,../../../这个整体表示源文件所在目录的上上上级目录,以此类推。

         例如,源文件a.html里如果写着一句话:/../b.html。这里地../表示的是a.html所在目录的上一级目录,不是b.html所在目录的上一级目录。

原出处例子:/../include.php 就表示所在文件向一级目录(第一个杠就表示是在根目录下)!

注释:

为什么说../../能表示源文件所在目录的上上级目录呢?

因为..是表示源文件所在目录的上一级目录,换句话说是,某一目录的上一级目录,所以../../中的第一个..(所代表的那个目录)就是表示第二个..(所表示的那个目录)的上一级目录故而,../../这个整体就表示源文件所在目录的上上级的那个目录。

那么为什么用.和..分别可以表示当前目录和当前目录的上一级目录呢,换句话说,具体实现原理是啥?

我们打开一个cmd,输入dir,显示结果如下:


Microsoft Windows [版本 6.1.7600]

版权所有 (c) 2009 Microsoft Corporation。保留所有权利。

C:\Users\jdktel>dir
 驱动器 C 中的卷没有标签。
 卷的序列号是 46EA-506E

 C:\Users\jdktel 的目录


2014/12/30  09:58    <DIR>          .
2014/12/30  09:58    <DIR>          ..

2013/03/20  15:46    <DIR>          .android
2014/05/22  11:32                 5 BBd.d
2014/05/22  10:12                 6 BBd.ds
2012/07/19  08:51    <DIR>          Contacts
2014/11/17  13:52             5,637 dbsecond_sql1.sql
2014/12/30  09:58               680 dbsecond_sys_ts2.sql
2014/12/26  17:22             2,382 dbsecond_test1.sql
2015/04/28  16:29    <DIR>          Desktop
2015/04/21  13:48    <DIR>          Documents
2015/03/13  16:15    <DIR>          Downloads
2014/12/01  13:32    <DIR>          Favorites
2012/12/24  15:15    <DIR>          Links
2013/06/26  16:49    <DIR>          Music
2014/09/03  10:04    <DIR>          Oracle
2013/08/21  15:19    <DIR>          Pictures
2012/07/19  08:51    <DIR>          Saved Games
2012/07/19  08:51    <DIR>          Searches
2014/09/10  10:55             4,096 tm.dmp
2012/07/19  08:51    <DIR>          Videos
               6 个文件         12,806 字节
              15 个目录  3,177,070,592 可用字节

C:\Users\jdktel>

我们发现在C:\Users\jdktel> 下,存在一个名为.的子目录和一个名为..的子目录(<DIR>标签说明他们是目录),两者分别是目录jdktel  和目录Users的别名(或说是目录链接)。这两个子目录是我们在创建目录jdktel时操作系统自动隐藏地创建的。所以,我们在一个目录下找到名为..的子目录便可知道该目录的上一级目录是啥,故而便可实现从当前目录拾级而上找到位于当前目录(的绝对路径)上层的任一级目录。


 

=============================================================================================

同目录文件引用

"."——代表目前所在的目录。
我们现在建一个 源文件info.html,在info.html里要引用index.html文件作为超链接。
假设index.html路径是:c:\Inetpub\wwwroot\sites\blabla\index.html
html文件作为超链接。c:\Inetpub\wwwroot.
<a href = "./index.html">index.html</a>
其实,可以省略"./"直接引用。

表示上级目录

../表示 源文件所在目录的上一级目录,../../表示源文件所在目录的上上级目录,以此类推。
/../include.php 就表示所在文件向一级目录(第一个杠就表示是在根目录下)!
假设index.html路径是:c:\Inetpub\wwwroot\sites\index.html
<a href="../index.html">index.html</a>
假设index.html路径是:c:\Inetpub\wwwroot\index.html
<a href="../../index.html">index.html</a>
假设index.html路径是:c:\Inetpub\wwwroot\sites\wowstory\index.html
html路径是:c:\Inetpub\wwwroot\sites.
<a href = "../wowstory/index.html">index.html</a>

表示下级目录

引用下级目录的文件,直接写下级目录文件的路径即可。
假设index.html路径是:c:\Inetpub\wwwroot\sites\blabla\html\index.html
<a href = "html/index.html">index.html</a>
假设index.html路径是:c:\Inetpub\wwwroot\sites\blabla\html\tutorials\index.html
在info.html加入index.html超链接的代码应该这样写:
<a href = "html/tutorials/index.html">index.html</a>
==========================================================================================================

HTML相对路径(Relative Path)和绝对路径(Absolute Path)


HTML初学者会经常遇到这样一个问题,如何正确引用一个文件。比如,怎样在一个HTML网页中引用另外一个HTML网页作为超链接(hyperlink)?怎样在一个网页中插入一张图片?......

(相关教程:HTML超链接HTML图片)

如果你在引用文件时(如加入超链接,或者插入图片等),使用了错误的文件路径,就会导致引用失效(无法浏览链接文件,或无法显示插入的图片等)。

为了避免这些错误,正确地引用文件,我们需要学习一下HTML路径。

HTML有2种路径的写法:相对路径和绝对路径。

HTML相对路径(Relative Path)

同一个目录的文件引用

如果源文件和引用文件在同一个目录里,直接写引用文件名即可。

我们现在建一个源文件info.html,在info.html里要引用index.html文件作为超链接。

假设info.html路径是:c:\Inetpub\wwwroot\sites\blabla\info.html

假设index.html路径是:c:\Inetpub\wwwroot\sites\blabla\index.html

在info.html加入index.html超链接的代码应该这样写:

<a href = "index.html">index.html</a>

如何表示上级目录

../表示源文件所在目录的上一级目录,../../表示源文件所在目录的上上级目录,以此类推。

假设info.html路径是:c:\Inetpub\wwwroot\sites\blabla\info.html

假设index.html路径是:c:\Inetpub\wwwroot\sites\index.html

在info.html加入index.html超链接的代码应该这样写:

<a href = "../index.html">index.html</a>

假设info.html路径是:c:\Inetpub\wwwroot\sites\blabla\info.html

假设index.html路径是:c:\Inetpub\wwwroot\index.html

在info.html加入index.html超链接的代码应该这样写:

<a href = "../../index.html">index.html</a>

假设info.html路径是:c:\Inetpub\wwwroot\sites\blabla\info.html

假设index.html路径是:c:\Inetpub\wwwroot\sites\wowstory\index.html

在info.html加入index.html超链接的代码应该这样写:

<a href = "../wowstory/index.html">index.html</a>

如何表示下级目录

引用下级目录的文件,直接写下级目录文件的路径即可。

假设info.html路径是:c:\Inetpub\wwwroot\sites\blabla\info.html

假设index.html路径是:c:\Inetpub\wwwroot\sites\blabla\html\index.html

在info.html加入index.html超链接的代码应该这样写:

<a href = "html/index.html">index.html</a>

假设info.html路径是:c:\Inetpub\wwwroot\sites\blabla\info.html

假设index.html路径是:c:\Inetpub\wwwroot\sites\blabla\html\tutorials\index.html

在info.html加入index.html超链接的代码应该这样写:

<a href = "html/tutorials/index.html">index.html</a>

HTML绝对路径(Absolute Path)

HTML绝对路径(absolute path)指带域名的文件的完整路径。

假设你注册了域名www.blabla.cn,并申请了虚拟主机,你的虚拟主机提供商会给你一个目录,比如www,这个www就是你网站的根目录。

假设你在www根目录下放了一个文件index.html,这个文件的绝对路径就是: http://www.blabla.cn/index.html。

假设你在www根目录下建了一个目录叫html_tutorials,然后在该目录下放了一个文件index.html,这个文件的绝对路径就是http://www.blabla.cn/html_tutorials/index.html。

 
作者或编者:布啦布啦   最近更新日期:2007-04-22
参考来源:www.BlaBla.cn 布啦布啦网页教程与代码
参考:
http://www.blabla.cn/html_tutorials/022_html_path.html
=========================================================================================================

6.3. 相对路径和绝对路径

文件路径就是文件在电脑中的位置,表示文件路径的方式有两种,相对路径绝对路径。在网页设计中通过路径可以表示链接,插入图像、Flash、CSS文件的位置。

物理路径:物理路径就是硬盘上文件的路径,比如下面的文件:

d:\dreamdu\exe\1.html
d:\dreamdu\exe\first\2.html
d:\dreamdu\exe\first\3.html
d:\dreamdu\exe\first\second\4.html

下面的例子使用了上面四个文件进行了相互链接,

相对路径(Relative Path)

如何表示同级目录的文件

2.html和3.html在同一个文件夹下, 如果2.html链接到3.html,可以在2.html中这样写:

<a href="3.html">同目录下文件间互相链接</a>

如何表示上级目录的文件

1.html是2.html和3.html的上级目录中的文件,如果2.html或3.html链接到1.html,可以在2.html或3.html中这样写

<a href="../1.html">链接到上级目录中的文件</a>

../ 代表一级上级目录(间隔一个目录) ../../代表二级上级目录(间隔两个目录),比如4.html链接到1.html,可以在4.html中这样写

<a href="../../1.html">链接到上级目录的上级目录中的文件</a>

如何表示下级目录的文件

2.html和3.html是1.html的下级目录中的文件,如果在1.html中链接到2.html, 可以在1.html中这样写

<a href="first/2.html">链接到下级目录(first)中的文件</a>

如果在1.html中链接到4.html,可以在1.html中这样写

<a href="first/second/4.html">链接到下级目录(first/second/)中的文件</a>

绝对路径(Absolute Path)

绝对路径就是带有网址的路径,比如你有一个域名www.dreamdu.com,和一个网站空间,上面的四个文件就可以这么表示。

<a href="http://www.dreamdu.com/exe/1.html">链接到1.html</a>
<a href="http://www.dreamdu.com/exe/first/2.html">链接到2.html</a>
<a href="http://www.dreamdu.com/exe/first/3.html">链接到3.html</a>
<a href="http://www.dreamdu.com/exe/first/second/4.html">链接到4.html</a>

根目录

使用根目录的方式表示的路径和绝对路径的表示方式相似,去掉前面的域名就可。

比如:

<a href="/exe/1.html">链接到1.html</a>
<a href="/exe/first/2.html">链接到2.html</a>

猴子提示: 使用根目录和绝对路径的好处是表示路径比较简单,都是从网站的最开始目录里查找,一级一级的向下查。缺点是程序不容易移植(比如把网站做为另一个网站的一个栏目,移动到一个新的文件夹中就不行了。)

参考:
http://www.dreamdu.com/webbuild/relativepath_vs_absolutepath/

C++中相对路径与绝对路径以及斜杠与反斜杠的区别|\\在C++的字符串中才表示一个打印字符\


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值