UNIX中的绝对和相对路径名简要介绍

2021年4月14日14:26:09 发表评论 1,305 次浏览

路径是OS的文件系统中文件或文件夹的唯一位置。文件的路径是/和字母数字字符的组合。

绝对路径名:绝对路径定义为从根目录(/)指定文件或目录的位置。

要写一个绝对路径名:从根目录(/)开始并向下运行。在每个目录名称后写一个斜杠(/)(最后一个是可选的)

例如 :

$cat abc.sql

将工作只要如果国际剑联" abc.sql"存在于你的当前目录中。但是, 如果此文件不存在于你的工作目录中, 而是存在于/home/kt中, 例如, 如下所示, 则此命令将起作用:

cat /home/kt/abc.sql

在上面的示例中, 如果路径名的第一个字符是/, 则必须相对于root确定文件的位置。当路径名中包含多个/时, 对于每个这样的/, 你必须将文件系统中的一个目录降级, 就像上面的kt一样, 它位于home之下一层, 因此位于root之下两层。

绝对路径定义为从根目录(/)指定文件或目录的位置。换句话说, 我们可以说绝对路径是从/目录到实际文件系统开始的完整路径。

相对路径

相对路径定义为与当前工作直接相关的路径(pwd)。它从你当前的目录开始, 永远不要以/开头.

更具体地说, 让我们看下图, 其中如果我们要查找照片, 则将提供其绝对路径为/home/jono/photos

但是假设我们已经在jono目录中了, 那么它的相对路径可以写成简单的

相片

.

UNIX中的绝对和相对路径名1

使用.和..在相对路径名中

UNIX在相对路径名–使用当前目录或父目录作为参考, 并指定相对于其的路径。相对路径名使用以下神秘符号之一:

.(a single dot) - this represents the current directory.
..(two dots) - this represents the parent directory.

现在, 这实际上意味着如果我们当前在目录/ home/kt/abc中, 现在你可以使用..作为对cd移至父目录/ home/kt, 如下所示:

$pwd
/home/kt/abc
$cd ..               ***moves one level up***
$pwd
/home/kt

注意:现在/与..一起使用时具有不同的含义;它不是向下移动一级, 而是向上移动一级:

$pwd
/home/kt/abc        ***moves two level up***
$cd ../..
$pwd
/home

绝对路径和相对路径的示例

假设你当前位于home/kt, 并且要将目录更改为home/kt/abc。让我们看看绝对路径和相对路径的概念:

  1. 使用相对路径概念更改目录:
    $pwd
    /home/kt
    $cd abc                   
    $pwd
    /home/kt/abc         
    
  2. 使用绝对路径概念更改目录:
    $pwd
    /home/kt
    $cd /home/kt/abc
    $pwd
    /home/kt/abc
    

如果发现任何不正确的地方, 或者想分享有关上述主题的更多信息, 请写评论。

木子山

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: