Mostrar / Ocultar archivos ocultos sin reiniciar el buscador?

13

Llegué a comprender que la siguiente es la forma de alternar la visibilidad de los archivos ocultos:

defaults write com.apple.finder AppleShowAllFiles YES
# replace YES with NO to hide hidden files
killall -HUP Finder /System/Library/CoreServices/Finder.app

¿Hay alguna manera de mostrar / ocultar archivos ocultos sin matar al Finder?

Vivek Ragunathan
fuente

Respuestas:

6

Editar: Esto ya no parece funcionar desde El Capitán. killall FinderParece ser la única manera ahora.

Este es mi método actual de El Capitan, que también debería funcionar para Mountain Lion y mayores

set newHiddenVisiblesState to "YES"
try
    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
end try
do shell script "defaults write com.apple.finder AppleShowAllFiles " & newHiddenVisiblesState & "; killall Finder"

Para Mavericks y Yosemite ...

No necesita reiniciar el Finder, solo actualice las ventanas.

Este Applescript cambiará el estado y se actualizará ...

set newHiddenVisiblesState to "YES"
try
    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
end try
do shell script "defaults write com.apple.finder AppleShowAllFiles " & newHiddenVisiblesState


tell application "Finder"
    set theWindows to every Finder window
    repeat with i from 1 to number of items in theWindows
        set this_item to item i of theWindows
        set theView to current view of this_item
        if theView is list view then
            set current view of this_item to icon view
        else
            set current view of this_item to list view

        end if
        set current view of this_item to theView
    end repeat
end tell

Crédito a ganbustein por la rutina mejorada de ocultar / mostrar

Tetsujin
fuente
No necesita el tell application "System Events"bloque alrededor de los dos do shell script ...comandos. De hecho, me sorprende que System Events le permita decirle que invoque do shell script.
ganbustein el
No soy un experto en ello. Siempre he usado eventos del sistema si parece que no tengo a 'nadie en particular' que contar;
Tetsujin
2
"Siempre funcionó" porque System Events está devolviendo un código de error que significa "hágalo usted mismo", y el script está haciendo eso silenciosamente para manejar el error. El problema es que estarías invocando do shell scriptlos privilegios de alguna otra aplicación sin darle la oportunidad de examinar el script. Apple hizo ese cambio para cerrar un agujero de seguridad donde podría pedirle a un programa que se ejecuta como root que haga su script por usted.
ganbustein el
1
@ganbustein He pegado tu versión en un par de otros lugares en SE. He usado esto en una respuesta. Gracias por el aporte. Más apreciado.
Tetsujin
Esto es genial, excepto que no cambia el escritorio en sí. ¿Hay alguna manera de hacerlo también, aparte de reiniciar el Finder?
TJ Luoma
10

En macOS Sierra, versión 10.12.4 y superior, puede presionar + Shift+ . (punto) para alternar los archivos ocultos dentro del Finder.

Edición tardía: actualmente también funciona en Mojave, a partir de b5, 18 de agosto de 2018.

viktorstrate
fuente
@ fd0, dice: "... para alternar archivos ocultos dentro del Finder", y la palabra clave aquí es "alternar", lo que generalmente implica presionar la misma combinación de teclas de acceso directo que oculta / oculta archivos ocultos en este caso de uso. +1
usuario3439894
¿Conoces el equivalente en versiones no estadounidenses?
ogerard
No olvide que puede usar la misma combinación de teclado en los cuadros de diálogo Abrir / Guardar para mostrar temporalmente los archivos ocultos.
boris42
¡Todavía funciona en abril de 2019!
SilverWolf - Restablece a Mónica el