Finder trata los enlaces simbólicos de manera diferente que el terminal MacBook Pro Retina OS X 10.9.4

2

Creé el enlace simbólico jboss7 para el enlace duro jboss-as-7.1.1. Final-descargado y funcionó bien en Finder. Luego hice una copia de seguridad antes de modificar JBoss ...

ln -s jboss-as-7.1.1.Final-downloaded jboss7
cp jboss-as-7.1.1.Final-downloaded jboss-as-7.1.1.Final-downloaded-orig

Más tarde, cambié el nombre del enlace físico a jboss-as-7.1.1. Final-descargado-modificado y lo reemplacé con una copia de seguridad.

mv jboss-as-7.1.1.Final-downloaded jboss-as-7.1.1.Final-downloaded-modified
mv jboss-as-7.1.1.Final-downloaded-orig jboss-as-7.1.1.Final-downloaded

El enlace simbólico apunta correctamente a la copia de seguridad con el mismo nombre de archivo (que termina con -descargado), pero Finder muestra y trata el enlace simbólico de manera incorrecta, diciendo que es un alias para la carpeta que termina con (-descargado-descargado).

¿Se supone que Finder trata los enlaces simbólicos de esta manera? ¿Cómo actualizo el Finder para reconocer el enlace simbólico que apunta al enlace físico actual?

Punto lateral: comandos que escribí usando el terminal tcsh o el Finder (no lo recuerdo, y el historial del terminal no retrocede lo suficiente como para responder a esto).

Relacionado: OS X no creará ningún enlace simbólico, en su lugar crea alias

    
pregunta Raymond Naseef 25.08.2014 - 16:44

2 respuestas

1

También pude reproducir esto (en OS X 10.9.4). Un caso más simple es el siguiente:

touch file.txt
ln -s file.txt link.txt
mv file.txt moved.txt
touch file.txt

Si el Finder estaba abierto al directorio de trabajo mientras se ejecutaba mv , entonces (incorrectamente) seguirá de link.txt a moved.txt hasta que se reinicie. Curiosamente, ni siquiera necesita la Terminal para reproducir este error, ya que también se aplica a los alias:

  1. Crea file.txt .
  2. Haz un alias de file.txt .
  3. Cambiar el nombre de file.txt a moved.txt .
  4. Crea un nuevo archivo también llamado file.txt .

El comportamiento deseado para los alias es apuntar al archivo movido ( moved.txt ) a menos que se ha creado un nuevo archivo en la ubicación original ( file.txt , creado en el Paso 4). Pero el comportamiento real es como en su ejemplo: el Finder sigue el alias a la ubicación movida hasta que se reinicia.

Esto es un error en el Finder. La solución es relanzar el Finder si una ventana abierta muestra un enlace simbólico / alias mientras mueve o cambia el nombre del archivo de destino.

    
respondido por el Ross Churchley 25.08.2014 - 19:49
0

Es extraño. Puedo reproducirlo, pero solo si realmente compruebo el enlace simbólico en la ventana Obtener información en el Finder antes de mover la copia de seguridad. Si realiza todos los pasos sin abrir esa ventana y verificar, no parece que lo haga. pero mover el archivo original en el Finder hará que el enlace siga al archivo, pero solo en el Finder. Además, después de relanzar el Finder, muestra la ruta correcta, siempre que el archivo original todavía esté allí. Durante todo esto, el enlace simbólico no cambia, siempre apunta al mismo lugar. Debe haber algún error con la forma en que el Finder resuelve los enlaces simbólicos. Parece tratarlos como alias, pero en realidad no los actualiza si mueve el archivo original, por lo que se restablece si reinicia el Finder.

No estoy seguro de cuáles son las implicaciones, exactamente. Si necesita reemplazar el archivo original, no es práctico relanzar el Finder cada vez, pero creo que solo debería afectar a los casos en los que está abriendo el enlace simbólico en el Finder o tal vez a los programas que usan el widget de selección de archivos del sistema operativo. (No probé si son tratados de la misma manera que el Finder)

    
respondido por el Michael D. M. Dryden 25.08.2014 - 18:47

Lea otras preguntas en las etiquetas