下面是我创建目录符号链接的代码:
sudo ln -s /usr/local/nginx/conf/ /etc/nginx
Run Code Online (Sandbox Code Playgroud)
我已经创建了目录/etc/nginx
.我只是希望源目录(/usr/local/nginx/conf/
)的内容位于目标目录(/etc/nginx
)的内容中.但是当我执行代码时,/etc/nginx
包含一个名为的目录conf
,而不是内容conf
.该目录包含我想要的内容,但位置错误.
为什么它将目录放在目标文件夹中,而不是仅仅将目录的内容放在目标文件夹中?
Fat*_*ror 251
ln
如果第二个arg是目录,则这是行为.它把一个链接到第一个参数里面.如果您想/etc/nginx
成为符号链接,则应首先删除该目录并运行相同的命令.
Cel*_*ada 30
这ln
是当目标已经存在并且是目录时要记录的内容.如果你想/etc/nginx
以成为一个符号,而不是包含一个符号,你最好不要将其创建为一个目录第一!
小智 9
在脚本中有用这样的东西:
if [ ! -d /etc/nginx ]; then ln -s /usr/local/nginx/conf/ /etc/nginx > /dev/null 2>&1; fi
Run Code Online (Sandbox Code Playgroud)
它会在重新运行脚本之后重新创建"坏"循环符号链接之前阻止