Necesita ocultar un enlace simbólico sin ocultar el directorio al que enlaza

9

Creé un enlace simbólico (específicamente un enlace simbólico y no un alias del Finder que bash no puede seguir) a un directorio en mi carpeta de inicio usando ln -s link $HOME/directoryy ahora deseo ocultar el enlace en el Finder para no tener que mirar eso. Normalmente lo usaría chflags hidden linkpara lograr esto, pero por supuesto eso afectaría el directorio, no el enlace. No puedo usar el punto inicial estándar porque el nombre del enlace en sí es importante para las aplicaciones que lo buscan y un punto inicial cambia el nombre.

Entonces mi pregunta es, ¿cómo oculto el enlace simbólico sin ocultar el directorio al que enlaza o cambiar su nombre?

EDITAR: intencionalmente mantuve mi pregunta vaga porque es un pequeño experimento con el Finder, pero aquí hay más detalles para aclarar exactamente lo que estoy tratando de hacer.

Finder utiliza la carpeta $ HOME / Desktop para el escritorio en sí, no importa si es un enlace, un alias o una carpeta completamente diferente llamada "Escritorio" (como la carpeta de inicio) siempre que esté en el directorio $ HOME .

Hice un enlace simbólico a mi directorio de inicio llamado "Escritorio" para llenar el contenido del escritorio de Finder con el contenido de mi carpeta de inicio (si intenta esto, no tendrá efecto hasta que vuelva a iniciar sesión, también se hizo). en 10.6). Eso también coloca el enlace simbólico en mi escritorio, por supuesto, que no quiero ver ni en la ventana del Finder ni en el escritorio. Si tuviera que cambiarle el nombre a ".Desktop" para ocultarlo, se ocultaría, pero el enlace entre mi carpeta de inicio y mi escritorio también se rompería.

Alabama
fuente
Parece que te están atrapados entre la espada y un lugar duro:-)
nik

Respuestas:

18
SetFile -P -a V nombre de archivo

El indicador '-P' lo hará funcionar en el enlace simbólico y no a lo que apunta. La parte '-a V' activará el atributo invisible para ocultarlo en el Finder.

Lara Dougan
fuente
Excelente, esto funcionó perfectamente para mí. Gracias.
AL
3

También puedes usar chflags -hpara no seguir enlaces simbólicos:

chflags -h hidden /path/to/symlink
Lri
fuente
Vale la pena mencionar que -Hes un indicador común para "enlaces simbólicos de desreferencia dados en la línea de comando, pero no los que se encuentran en el recorrido del árbol" (el comportamiento intermedio -L(siga todos los enlaces simbólicos) y -P(no siga los enlaces simbólicos)). Esa podría ser la fuente de cierta confusión.
Blacklight Shining
0

Cambiar el nombre del enlace a .link

drvdijk
fuente
0

Como dijo drvdijk , puede cambiar el nombre del enlace simbólico a .link. Los elementos cuyos nombres comienzan con puntos normalmente están ocultos de los navegadores de archivos GUI (como el Finder) y la mayoría de los programas de línea de comandos. Por ejemplo, lsno lo mostrará a menos que pase -a(mostrar --allarchivos) o -A(mostrar --almost-allarchivos).

Blacklight Shining
fuente