Відповіді:
cp --remove-destination "$(readlink <symlink>)" <symlink>
<symlink>
є символьне посилання на відносний шлях, це працює лише в тому випадку, якщо <symlink>
в поточному каталозі є. Ви можете скористатися readlink -f
. Або якщо використовуєте zsh
:cp --remove-destination path/to/symlink(:A) path/to/symlink
Ви можете зробити:
file=path/to/symlink
{ rm -f -- "$file" && cat > "$file"; } < "$file"
(що копіює лише вміст, а не метадані файлу, такі як дозволи та права власності).