0 votos

Cómo se cambia la carpeta del salvapantallas con la línea de comandos en Mac

Tengo una colección de arte de 8000 fotos, las tengo divididas en carpetas de unas 200 cada una. Voy a utilizar Python para seleccionar aleatoriamente una de estas carpetas para que mi salvapantallas me muestre continuamente la obra de un nuevo artista en lugar de mezclar aleatoriamente todos los artistas. Para ello tengo que cambiar la carpeta que utiliza el salvapantallas con Python, que a su vez cambiará la carpeta mediante Terminal.

He leído este artículo y parece que se puede hacer mediante este comando:

https://krypted.com/mac-security/mac-setting-screen-saver-from-the-cli/

defaults -currentHost write com.apple.screensaver modulePath -string "/users/kylefoley/pictures/art/art 2/impressionism/claude monet/"

Pero eso no funcionó. Además, estoy usando MacOS 10.14

ACTUALIZACIÓN

Cuando introduzco: /usr/bin/defaults -currentHost read com.apple.ScreenSaverPhotoChooser Obtengo el resultado esperado, es decir, la carpeta real que utiliza el salvapantallas. Cuando introduzco: /usr/bin/defaults -currentHost write com.apple.ScreenSaverPhotoChooser SelectedFolderPath -string "/users/kylefoley/pictures/art/art 2/impressionism/claude monet/" a continuación, introduzca /usr/bin/defaults -currentHost read com.apple.ScreenSaverPhotoChooser Me sale

{
    CustomFolderDict =     {
        identifier = "/Users/kylefoley/Pictures/art/complete art 2";
        name = "complete art 2";
    };
    SelectedFolderPath = "/users/kylefoley/pictures/art/art 2/impressionism/claude monet/";
    SelectedSource = 4;
    ShufflesPhotos = 1;
}

Lo cual es erróneo porque la ruta del CustomFolderDict['identificador'] debería ser la misma que la del SelectedFolderPath

Entonces hice una suposición y lo intenté:

/usr/bin/defaults -currentHost write com.apple.ScreenSaverPhotoChooser CustomFolderDict -identifier "/users/kylefoley/pictures/art/art 2/impressionism/claude monet/"

que dio como resultado Unexpected argument . Si creo que podría averiguar cómo arreglar ese CustomFolderDict con la línea de comandos entonces eso podría resolver el problema.

ACTUALIZACIÓN 2

He introducido:

/usr/bin/defaults -currentHost write com.apple.ScreenSaverPhotoChooser CustomFolderDict -dict-add identifier "/users/kylefoley/pictures/art/art 2/impressionism/claude monet/"
/usr/bin/defaults -currentHost write com.apple.ScreenSaverPhotoChooser CustomFolderDict -dict-add name "claude monet"

Y aunque me dan

{
    CustomFolderDict =     {
        identifier = "/users/kylefoley/pictures/art/art 2/impressionism/claude monet/";
        name = "claude monet";
    };
    LastViewedPhotoPath = "";
    SelectedFolderPath = "/users/kylefoley/pictures/art/art 2/impressionism/claude monet/";
    SelectedSource = 3;
    ShufflesPhotos = 1;
}

Cuando introduzco

/usr/bin/defaults -currentHost read com.apple.ScreenSaverPhotoChooser

El nuevo resultado es sólo una pantalla en blanco con el nombre de mi ordenador.

0 votos

Este artículo de OSXDaily muestra todas las ubicaciones comunes para los archivos de salvapantallas - supongo que si pones un softlink en el lugar correcto en ~/Librería apuntando a la ruta anterior podrían ser recogidos.

0 votos

Eso es para los salvapantallas que hacen algo raro como algún fractal, yo solo quiero que se desplace por un conjunto de imágenes que ya lo hace solo que no puedo averiguar la ruta a esa carpeta de imágenes.

0 votos

Oh, también puedes añadir tu propia carpeta - en Salvapantallas escoge un modo - por ejemplo Ken Burns - a la derecha bajo la fuente hay una opción de elegir carpeta - puedes seleccionar una carpeta de tu elección (y encontrará todas las imágenes allí).

2voto

Mr R Puntos 224

Esto me funciona en una máquina Catalina y se sabe que funciona en Mavericks (HT @bobsmith76 por perseverar).

/usr/bin/defaults -currentHost write com.apple.ScreenSaverPhotoChooser 'SelectedFolderPath' "/Users/you/sub/sub/folder"

Utilicé las esquinas calientes para activar el protector de pantalla, y establecí un valor predeterminado diferente, entonces cuando activé el protector de pantalla de nuevo utilizó la nueva carpeta.

NOTA si tienes las Preferencias del Sistema abiertas cuando haces los cambios, entonces esto puede causar que ocurra algo incorrecto (como que la configuración del salvapantallas cambie a un salvapantallas sin imagen - ambos terminamos en el salvapantallas de Mensajes de esta manera).

0 votos

Gracias por ayudarme. He dicho en mi OP que estoy usando 10.14. En cualquier caso, no pude conseguir el anterior script para trabajar para 10.14.

0 votos

En teoría debería funcionar en 10.14 - pero me he dado cuenta de que alguien en el foro de Jamf está preguntando por qué funcionaba en 10.14.2 y no lo hace ahora (10.14.5) ( community.spiceworks.com/topic/ )

0 votos

Si ejecuta esto - ¿se muestra el SelectedFolderPath establecido en el valor que quería? /usr/bin/default -currentHost read com.apple.ScreenSaverPhotoChooser ... Asumo que tienes un salvapantallas activado ?

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