绝对路径名和相对路径名是在Linux上指定目录或文件的虚拟地址的两种方式。那么这两种路径类型之间有什么区别,您应该在命令中使用哪一种?我们现在来看看。Linux中的相对路径和绝对路径如果您曾经使用过任何基于参数的Linux命令,例如cd或ls,您就会知道有多种方法可以指定目录或文件的路径。您可能更喜欢使用简单的路径表达式,或者,如果您是高级Linux用户,则可以使用复杂的正则表达式将文件或目录名称传递给程序。无论哪种方式,在Linux上只有两种指定目录路径的方法:绝对和相对。绝对路径表达式绝对路径总是从根目录开始,以您要指向的实际目录或文件结束。当使用绝对路径表达式时,您需要键入指向最终位置的层次结构中存在的所有子目录名称。比如想用绝对路径表达式指向/var/www目录下的/html/linuxmi.com,可以使用:┌──(linuxmi?linuxmi)-[~/www.linuxmi.com]└─$/var/www/html/linuxmi.com...表达式开头的/表示Linux上的根目录。相对路径表达式另一方面,相对路径是使用另一个路径(通常是当前工作目录)作为其根或基础的路径表达式。顾名思义,它“相对于”系统上的现有路径。比如你当前在/var/www目录下,需要指向/html/linuxmi.com,可以使用:┌──(linuxmi?linuxmi)-[/var/www]└─$cd./html/linuxmi.com…哪里。表示您的当前目录。您可以使用cd命令更改当前工作目录。除了单句点(.)之外,相对路径表达式还使用双句点(..)来引用父目录。例如,假设您位于以下目录结构中的/www文件夹中:/var/www/html/linuxmi.com在上述路径表达式中,.将代表/www目录,而..将指向/var目录。如果在/var/www中你需要访问/var中的另一个目录/mail,你可以使用:../mail就这么简单。绝对与相对:哪个路径表达式更好?尽管路径表达式对于桌面用户来说可能看起来简单且不重要,但使用错误的路径名会在各种用例中造成很多不请自来的不便。Web服务器就是一个很好的例子。作为在Linux服务器上托管项目的Web开发人员,您需要访问项目目录中的文件。在这里,使用相对路径表达式是标准的,因为项目的子目录名称或域名的任何更改都可能会断开链接。Linux终端目录列表您可以通过一个桌面用户可能更容易理解的简单示例来理解这一点。/字符表示Linux系统上的根目录。想象一下,如果您突然更改它并使/字符指向主目录。许多包含绝对路径表达式的命令将不起作用,因为/现在已被重新分配给其他目录。使用相对路径表达式的另一个优点是您可以节省键入不必要字符的时间,因为它们是相对于当前工作目录的。这里唯一的问题是相对表达式的复杂性和学习曲线。但它在绝对路径表达式中也很常见;要成为使用绝对路径的高手,您需要熟悉Linux目录层次结构。您可以使用tree命令查看整个Linux目录树,并使绝对路径表达式更容易。了解Linux目录层次结构Linux目录结构对于运行基于Linux的操作系统的所有机器都是通用的。您可以使用ls或tree等命令来详细了解文件和文件夹在计算机上的结构。
