Tengo el siguiente código para cambiar la imagen del escritorio de mi Macbook
tell application "System Events"
tell current desktop
set picture to "/Library/Desktop Pictures/Beach.jpg"
end tell
end tell
¿Cómo cambio todos los escritorios? Tengo un segundo monitor.
Las respuestas anteriores se ven muy bien, pero quería compartir una forma que encontré para hacer esto con mucho menos código.
tell application "System Events"
tell every desktop
set picture to "path/to/picture.png"
end tell
end tell
Incluso podrías condensarlo en una sola línea:
tell application "System Events" to tell every desktop to set picture to "path/to/picture.png"
Aquí hay un pequeño script que uso para configurar la mayoría de las propiedades de fondo de escritorio para mis monitores duales:
decirle a la aplicación "Eventos del sistema" decirle escritorio 1 establecer la carpeta de imágenes en "/Library/Desktop Pictures" establezca la rotación de la imagen en 2, usando el intervalo establezca el intervalo de cambio en 1800 establecer el orden aleatorio en verdadero final decir Dile escritorio 2 establecer la carpeta de imágenes en "/Library/Desktop Pictures/Mine" establezca la rotación de la imagen en 2, usando el intervalo establezca el intervalo de cambio en 1800 establecer el orden aleatorio en verdadero final decir final decir
Lo uso porque MacOSX a menudo restablece mis fondos a los predeterminados.
Esto podría funcionar. Solo tengo un monitor, así que no pude probarlo correctamente.
tell application "System Events"
set desktopCount to count of desktops
repeat with desktopNumber from 1 to desktopCount
tell desktop desktopNumber
set picture to "/Library/Desktop Pictures/Beach.jpg"
end tell
end repeat
end tell
Para el monitor predeterminado
osascript -e 'tell application "System Events" to set picture of current desktop to "<path-to-img>"'
Para el segundo monitor
osascript -e 'tell application "System Events" to set picture of second desktop to "<path-to-img>"'
ctf0
set change interval to 1800
o cualquiera que sea la cantidad de segundos que debería ocurrir el cambio para que no se quede atascado con la misma imagen después de ejecutar el script.