web-dev-qa-db-ja.com

ダングリングシンボリックリンクのコピーを強制的にcp

cp(Bash 4.2.5、Ubuntu 12.04)をダングリングシンボリックリンクに強制的にコピーする方法はありますか?

cp a-file path/to/danling/symlink/a-file
cp: not writing through dangling symlink `path/to/danling/symlink/a-file`

この場合、cp -fは無力であると思われ、同じメッセージが表示されます。

14

コピーする前にcpでターゲットファイルを削除します。

$ ln -s /random/file f              
$ cp -f a f                  
cp: not writing through dangling symlink ‘f’
$ cp --remove-destination a f
$ diff a f && echo yes
yes

man cp から:

--remove-destination
      remove  each existing destination file before attempting to open
      it (contrast with --force)
20
muru

unlink theSymLinktheSymLinkは実際のシンボリックリンク)を使用して、もう一度やり直してください

2
SwCharlie