我想从 bash 脚本中更改符号链接的目标。问题是符号链接非常重要(它是/bin/sh
, 即),我会以这样的方式来做:
- 删除旧目标后,新目标将立即可用,即不会有任何东西会注意到它的消失,
- 更改将不可能在中间失败,即让用户删除符号链接并且没有新的符号链接。
我想了两种方法。要么使用普通ln
:
ln -fs /bin/bash /bin/sh
或使用mv
:
ln -s /bin/bash /bin/sh.new
mv /bin/sh.new /bin/sh
哪一个更适合我的需求?他们中的一个是否有可能尝试替换符号链接目标而不是符号链接本身?