¿Cómo reemplazar un enlace simbólico con una copia de un archivo al que enlaza?

¿Cómo reemplazar un enlace simbólico con una copia de un archivo al que enlaza?

Al tener un enlace simbólico (único, sin necesidad de procesamiento de sistema de archivos por lotes), ¿qué línea de comando usar para reemplazarlo con una copia del archivo al que se vincula?

Respuesta1

cp --remove-destination "$(readlink <symlink>)" <symlink>

Respuesta2

Podrías hacerlo:

file=path/to/symlink
{ rm -f -- "$file" && cat > "$file"; } < "$file"

(eso solo copia el contenido, no los metadatos del archivo, como permisos y propiedad).

información relacionada