Wie kopiere ich symbolische Links mit dem relativen Pfad unter Unix?
Ich habe diesen Ordner /full/path/sourceFolder
mit den folgenden Dateien:
full/path/sourceFolder/fileA /full/path/sourceFolder/copyA -> fileA /full/path/sourceFolder/copyB
Sie können sehen, dass der Symlink auf die Datei in demselben Ordner verweist und nicht den vollständigen Pfad verwendet, sondern den relativen Pfad für die Verknüpfung verwendet.
Jetzt brauche ich einen Kopierbefehl, der alle Dateien mit dem Namen copy * im Quellordner in einen Zielordner kopiert. Wenn ich die Datei copyA kopiere, sollte sie die Quelle des symbolischen Links kopieren, dh fileA, aber den Namen copyA beibehalten. Der Kopierbefehl sollte auch zum Kopieren der Datei copyB funktionieren.
Kann das gemacht werden?
Ich habe diese Befehle ausprobiert, aber es funktioniert nicht, hauptsächlich weil mein Bezug relativ ist:
cp -rf --preserve=links /full/path/sourceFolder/copy* /target/path/ cp -RP /full/path/sourceFolder/copy* /target/path/ cp -Hrf /full/path/sourceFolder/copy* /target/path/ cp -Lrf /full/path/sourceFolder/copy* /target/path/
Mir gehen die Ideen aus. Was ist der eleganteste Weg, um dies zu erreichen?
0 Antworten auf die Frage
Verwandte Probleme
-
9
Was ist der Unterschied zwischen den Befehlen "su -s" und "sudo -s"?
-
4
Gutes freies Ubuntu Server-VMWare-Image benötigt
-
4
Was sind die Unterschiede zwischen den großen Linux-Distributionen? Werde ich es merken
-
2
Begrenzung der CPU-Auslastung für Flash in Firefox?
-
2
Wie kann ich mein Mikrofon unter Debian GNOME zum Laufen bringen?
-
2
Conky-Setups - Beispiele / Ideen?
-
3
Was sind die Unterschiede zwischen Linux Window Managern?
-
2
ThunderBird / Lichtsynchronisation mit SE k770i
-
4
Linux-Dateisystem
-
6
Vollbild-Flash langsam in KDE 4