Liu*_* 刘研 20 directory symlink
我想将 tomcat 服务器从 7.0.19 升级到 7.0.20。
我之前已经有了ln -s apache-tomcat-7.0.19 tomcat7,所以现在我需要使用以下命令链接 tomcat7到新目标ln -s --force apache-tomcat-7.0.21 tomcat7,但它没有按我预期的那样工作:它创建了一个符号链接,tomcat7/apache-tomcat-7.0.21而不是tomcat7用新目标替换现有的符号链接。
例子
# mkdir v1 v2
# ln -s v1 v
# ln -s v2 v
# ll v*
lrwxrwxrwx. 1 root root 2 Sep 5 16:02 v -> v1
v1:
total 0
lrwxrwxrwx. 1 root root 2 Sep 5 16:02 v2 -> v2
v2:
total 0
Run Code Online (Sandbox Code Playgroud)
我查看了 的手册ln,我认为ln -s --force apache-tomcat-7.0.21 tomcat7使用第 3 种形式而不是第一种形式来解释参数。第一种和第三种形式之间是如此模棱两可。那么在这种情况下如何替换符号链接呢?
小智 16
你想要的-T选项:
$ mkdir v1
$ ln -s v1 foo
$ ls -FlA | grep foo
lrwxrwxrwx 1 phil phil 2 2011-09-05 01:58 foo -> v1/
$ mkdir v2
$ ln -s -T -f v2 foo
$ ls -FlA | grep foo
lrwxrwxrwx 1 phil phil 2 2011-09-05 01:59 foo -> v2/
Run Code Online (Sandbox Code Playgroud)