Ich möchte den Tomcat-Server von 7.0.19 auf 7.0.20 aktualisieren.
Ich habe es bereits ln -s apache-tomcat-7.0.19 tomcat7
zuvor getan , also muss ich jetzt mit dem folgenden Befehl eine Verknüpfung tomcat7
zu einem neuen Ziel erstellen ln -s --force apache-tomcat-7.0.21 tomcat7
, aber es funktioniert nicht wie erwartet: Es wurde eine symbolische Verknüpfung erstellt, tomcat7/apache-tomcat-7.0.21
anstatt die vorhandene tomcat7
symbolische Verknüpfung durch ein neues Ziel zu ersetzen .
Beispiel
# 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
Ich habe das Handbuch vonln
durchgesehen und denke, ich ln -s --force apache-tomcat-7.0.21 tomcat7
benutze das 3. Formular anstelle des 1. Formulars, um die Parameter zu erklären. Das ist so vieldeutig zwischen der 1. und 3. Form. Wie kann man in diesem Fall den symbolischen Link ersetzen?
Beim Ersetzen von symbolischen Links zu Verzeichnissen sollten wir die
-n
Option verwenden.Beispiel:
ln -sfn /path/to/directory /target/directory
quelle
-
vor jeder Flagge ein separates Leerzeichen zu setzen.Warum nicht einfach
?
Dadurch wird das alte Verzeichnis apache-tomcat-7.0.19 nicht berührt, sondern nur der alte Link gelöscht. Dann kann ich die neue erstellen.
quelle
cp -f
/mv -f
den einzigen Befehl Schreibvorgang zu tun, so dass ich für die Suche einzigen Befehl Lösung .