如何复制符号链接?

Use*_*ser 68 centos cp symlink

我有一个指向一个目录中文件的符号链接。我想在另一个目录中有相同的链接。如何复制符号链接?

我试图 cp 符号链接,但这会复制它指向的文件而不是符号链接本身。

Gil*_*il' 94

使用cp -P(大写 P)从不遍历任何符号链接,而是复制符号链接。

这可以与其他选项结合使用,例如-R复制目录层次结构——cp -RL遍历到目录的cp -RP所有符号链接,复制所有符号链接。cp -R可能会根据 unix 变体做一个或另一个;GNU cp(在 CentOS 上找到)默认为-P.

即使使用-P,您也可以通过在命令行/的末尾添加一个来将符号链接的目标cp -RP foo/ bar复制到目录:复制foo指向的目录树。

GNUcp有一个方便-a的选择,结合-R-P-p多一点。它制作源的精确副本(尽可能),保留目录层次结构、符号链接、权限、修改时间和其他元数据。

  • 请注意,一旦复制/移动,符号链接可能会损坏(如果源是相对路径的符号链接)。 (3认同)
  • 如果您要移动到更高或更低的目录,有没有办法防止破坏符号链接? (3认同)
  • 在 Mac 上,`cp -a` 有效,但 `cp -P` 无效 (3认同)