DESCARGO DE RESPONSABILIDAD / ADVERTENCIA
Los archivos ocultos se ocultan por una razón generalmente. Use el siguiente script solo si está razonablemente seguro de que sabe lo que está haciendo. En otras palabras: si rompes tu sistema al eliminar archivos ocultos al azar, es tu culpa.
Aquí está el script que uso para alternar entre mostrar / no mostrar archivos ocultos dentro de Finder .
(Mateusz Szlosek mencionó anteriormente el acceso directo nativo de OSX para alternar archivos ocultos en Abrir / Guardar diálogos )
La diferencia entre mi script y otros que he visto hasta ahora:
La mayoría de los scripts no hacen nada más después de matar a Finder. Por lo general, esto significa que tiene que volver a la carpeta en la que estaba originalmente, ya que el relanzamiento automático del Finder no abre de manera confiable su última carpeta activa.
La siguiente secuencia de comandos se vuelve a abrir y se enfoca en su última carpeta activa, es decir, la carpeta en la que estaba cuando usaba el interruptor, pero ahora muestra (o no muestra) archivos ocultos.
Le asigné un acceso directo (cmd + shift +.) y encuentro que trabajar con archivos ocultos en Finder es mucho más conveniente ahora.
Gracias a Tetsujin que publicó un script en este sitio hace un tiempo que adapté para agregar la funcionalidad 'reabrir última carpeta'.
on run {input, parameters}
tell application "Finder"
set var1 to POSIX path of (target of window 1 as alias)
end tell
set newHiddenVisiblesState to "YES"
set oldHiddenVisiblesState to do shell script "defaults read com.apple.finder AppleShowAllFiles"
if oldHiddenVisiblesState is in {"1", "YES"} then
set newHiddenVisiblesState to "NO"
end if
do shell script "defaults write com.apple.finder AppleShowAllFiles " & newHiddenVisiblesState
---- Sleep hack mentioned below. 0.5s minimum, 1-2s safer. Ugly, but (probably) unavoidable.
do shell script "killall Finder; sleep 0.5s"
tell application "Finder"
---- Close other windows if Finder managed to relaunch already
if application "Finder" is running then
close every window
end if
open (var1 as POSIX file)
activate
end tell
end run
Para usar el script: abra un nuevo flujo de trabajo en Automator, arrastre "Ejecutar AppleScript", copie y pegue el código anterior y guárdelo dentro de su carpeta de servicios (generalmente, ~ / Library / Services /, afaik).
Adjuntar un acceso directo para ejecutar un script debe estar cubierto en otra parte de este sitio. Limité el alcance de mi acceso directo al Finder solo.
Observación de estilo:
Tengo que recurrir a un poco de un truco feo, usando 'dormir' después de matar a Finder, antes de abrir manualmente la carpeta original.
Si no fuerzo este retraso, existe la posibilidad de que OSX reinicie Finder y abra una carpeta (no necesariamente la última activa, según mi experiencia). Junto con mi propio comando 'abrir', esto puede llevar al efecto desagradable de dos procesos de Finder (imparables, incluso) que se ejecutan, y que Finder ya no funciona en absoluto. Si esto sucede, cerrar sesión y volver a conectarlo lo soluciona, pero obviamente es una pérdida de tiempo, así que uso 'dormir'.
Un valor de inactividad de 0.5s funciona para mí, pero para estar seguro, puedes aumentarlo ligeramente (agregando un retraso más notable al proceso).
Si alguien conoce una forma de suprimir el relanzamiento del Finder y la apertura poco confiable de alguna ventana después de enviar la señal de Killall, o alguna otra forma de deshacerse del truco de "dormir", me encantaría escuchar eso!