下面是我创建目录符号链接的代码:
sudo ln -s /usr/local/nginx/conf/ /etc/nginx
我已经创建了目录 /etc/nginx
. 我只是希望源目录( /usr/local/nginx/conf/
)的内容位于目标目录( /etc/nginx
)的内容中 . 但是当我执行代码时, /etc/nginx
包含一个名为 conf
的目录,而不是 conf
的内容 . 该目录包含我想要的内容,但位置错误 .
为什么它将目录放在目标文件夹中,而不是仅仅将目录的内容放在目标文件夹中?
3 回答
当目标已经存在并且是目录时,这就是
ln
要记录的内容 . 如果你想要/etc/nginx
到 be 一个符号链接而不是 contain 一个符号链接,你最好不要先将其创建为目录!在脚本中有用的东西是这样的:
它会在重新运行脚本之后重新创建“坏”循环符号链接之前阻止
如果第二个arg是目录,则这是
ln
的行为 . 它会在其中放置第一个arg的链接 . 如果希望/etc/nginx
成为符号链接,则应首先删除该目录并运行相同的命令 .