动态绝对路径符号链接
dynamic absolute path symlinks
有没有办法为 symlinks 创建动态绝对路径?
每次我尝试创建一个带有相对路径的 symlink 时,link 都解析为已损坏。我唯一的选择是用绝对路径
创建 symlink
ex. ln -s $PATH/folder docroot/folder1
虽然这有效,但当我将代码推送到远程服务器时,路径仍在我的主目录中查找并导致权限被拒绝错误。
所以,我想知道是否有办法伪造绝对路径?
项目的文件结构如下所示:
SiteName
Docroot
folder
folder
folder
您最初使用相对 linking 的想法非常合适,但很可能只是没有正确实施。正确创建相对符号links:
给定的目录结构:
SiteName
docroot
folder
您当前的工作目录:SiteName
- 你想要:
docroot/folder1 -> docroot/folder
尝试:
$ ln -s folder docroot/folder1
如果你有 tree
程序,你可以看到结构,以及 symlink folder1
成功指向 docroot
的 folder
:
$ tree
.
└── docroot
├── folder
└── folder1 -> folder
3 directories, 0 files
说明
您最初对亲属 link 的尝试失败可能是由于对 relative
link 所需内容的普遍误解:
Shadur's Unix & Linux answer 提及:
Symbolic links are relative to the location the link is in, not the location you were when you created the link. ...
所以,
- 从
folder1
的角度来看,folder
的相对路径只是 folder
,因为它们是同一目录的兄弟
- 命令语法为
ln -s <relative path> <where to create new link>
- 当 运行 来自
SiteName
的命令时,新的 link 将在 docroot/folder1
处创建
所以最后的命令是 ln -s folder docroot/folder1
在 docroot/folder1
正确创建以指向同一目录中的 folder
。
因此,只要您不更改它们的相对位置,它现在就可以正常工作。
有没有办法为 symlinks 创建动态绝对路径?
每次我尝试创建一个带有相对路径的 symlink 时,link 都解析为已损坏。我唯一的选择是用绝对路径
创建 symlink ex. ln -s $PATH/folder docroot/folder1
虽然这有效,但当我将代码推送到远程服务器时,路径仍在我的主目录中查找并导致权限被拒绝错误。 所以,我想知道是否有办法伪造绝对路径?
项目的文件结构如下所示:
SiteName
Docroot
folder
folder
folder
您最初使用相对 linking 的想法非常合适,但很可能只是没有正确实施。正确创建相对符号links:
给定的目录结构:
SiteName docroot folder
您当前的工作目录:
SiteName
- 你想要:
docroot/folder1 -> docroot/folder
尝试:
$ ln -s folder docroot/folder1
如果你有 tree
程序,你可以看到结构,以及 symlink folder1
成功指向 docroot
的 folder
:
$ tree
.
└── docroot
├── folder
└── folder1 -> folder
3 directories, 0 files
说明
您最初对亲属 link 的尝试失败可能是由于对 relative
link 所需内容的普遍误解:
Shadur's Unix & Linux answer 提及:
Symbolic links are relative to the location the link is in, not the location you were when you created the link. ...
所以,
- 从
folder1
的角度来看,folder
的相对路径只是folder
,因为它们是同一目录的兄弟 - 命令语法为
ln -s <relative path> <where to create new link>
- 当 运行 来自
SiteName
的命令时,新的 link 将在docroot/folder1
处创建
所以最后的命令是 ln -s folder docroot/folder1
在 docroot/folder1
正确创建以指向同一目录中的 folder
。
因此,只要您不更改它们的相对位置,它现在就可以正常工作。