mv 一个文件而不破坏该文件的符号链接

gab*_*be. 24 command-line symlink rename

是否可以 mv不破坏指向该文件的符号链接的文件?我对此的最初回应是否定的,我正在制定一个基于脚本的解决方案,以在移动后立即更改链接,但我想知道其他人是如何解决这个问题的。符号链接的路径和名称是预先知道的,所以理论上我需要做的就是:

  1. 获取链接的目标
  2. mv目标
  3. 重新创建指向新目标的链接
  4. 创建指向新目标的新链接(与原始链接不同,我现在仍想保留)

稍后:

  1. 删除旧链接

1-4 将封装在 bash 脚本中,但我想知道是否有人有更优雅的方法,或者知道我不知道的内置命令或命令。

Cal*_*leb 8

您走在正确的轨道上,我认为没有比您描述的序列更简单的方法了。

第 3 步和第 4 步有点混乱。如果您想重新定位现有链接,您可以使用相同的名称ln -f覆盖现有文件。如果您希望链接的名称也更改以反映新的目标名称,则您的序列是正确的。