2012-02-21 9 views
15

¿El comando cp tiene alguna opción para sobrescribir el archivo de destino que es un enlace simbólico?comando cp para sobrescribir el archivo de destino que es un enlace simbólico

El problema es el siguiente:

[[email protected] test]$ ls -l 
total 8 
-rw-rw-r--. 1 dthnguyen dthnguyen 5 Feb 21 09:07 a.txt 
lrwxrwxrwx. 1 dthnguyen dthnguyen 7 Feb 21 08:55 b.txt -> ./a.txt 
-rw-rw-r--. 1 dthnguyen dthnguyen 5 Feb 21 08:55 c.txt 
[[email protected] test]$ cp c.txt b.txt 

Después de hacer la copia, a.txt tiene el contenido de c.txt, b.txt todavía une a a.txt. El resultado esperado es que a.txt contenga el contenido anterior, b.txt es un nuevo archivo regular que tiene el mismo contenido que c.txt.

Respuesta

24

Dígale a cp para eliminarlo primero.

cp --remove-destination c.txt b.txt 
+0

it works !!! Muchas gracias Ignacio Vazquez-Abrams –

+4

¿Hay alguna manera de hacer esto para los directorios? Lo intenté con '-r' y no pareció funcionar. – Ajedi32

+3

No veo esta opción en OS X 10.9.5. – bolinfest

Cuestiones relacionadas