1 votos

¿Cómo resolver este problema (acceso a carpetas invisibles) cuando se utiliza AppleScript?

Por ejemplo:

tell application "Finder"
    activate
    set fNo to folder "usr" of (path to startup disk) -- don't work
    set fYes to folder "Library" of (path to home folder) -- works
end tell

da

error "Erreur dans Finder : Il est impossible d'obtenir folder "usr" of startup disk." number -1728 from folder "usr" of startup disk

( error en Finder: no se puede obtener la carpeta "usr" del disco de inicio." número -1728 de la carpeta "usr" del disco de inicio )

Configuración fYes funciona probablemente porque una ganancia de acceso a mi usuario Inicio en un intento anterior, pero se me olvidó dónde / cómo.

Entonces, ¿cómo puedo conceder los derechos de acceso necesarios al script?

0voto

red_menace Puntos 111

La cuestión no es Ventura, ni la seguridad, sino visibilidad . scripts utilizando la función Buscador normalmente no se ven los elementos invisibles, del mismo modo que normalmente no se muestran en las ventanas del Finder. Por poner un ejemplo, su script de ejemplo funciona (o no) cuando se utiliza la función commandshiftperiod para mostrar los elementos invisibles. Una alternativa sería utilizar Eventos del sistema .

0voto

quark67 Puntos 28

Como usuario red_menace señalado, la carpeta a la que intenté acceder tiene una particularidad: es "invisible" (aparece en gris en el Finder cuando se accede a ella y se muestra a través de la opción de menú Ir > Ir a carpeta...; escriba "/usr" en los MacOS recientes para acceder a ella).

He intentado acceder a ella a través de AppleScript mediante el comando "carpeta ... de carpeta ..." y ha fallado.

Pero existe otro método para especificar una carpeta en AppleScript. Y con este otro método, todo funciona sin problemas y sin fallos.

Éste es el método que funciona (quizá otros también).

tell app "Finder"
    activate
    set fNo to alias "Macintosh HD:usr"
end tell

Descubrí esto probando el ajuste "fNo" a la carpeta con el AppleScript "set fNo to choose folder" (y en la ventana de elección, introduce command+shift+G, y luego escribe "/usr" en el prompt). Y entonces descubrí que en la parte Resultado de la ventana Editor de script, fNo era de hecho alias "Macintosh HD:usr" Así que lo intenté directamente con éxito.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X