Un script es esencialmente una secuencia de instrucciones (comandos) que el ordenador ejecuta, lo que lo convierte en una excelente herramienta para automatizar tareas repetitivas. Los scripts son altamente escalables y versátiles.
Debido a que los scripts pueden ser implementados en dispositivos de usuario a través de soluciones de gestión de dispositivos (como Applivery), son invaluables para los equipos de TI. Permiten realizar tareas complejas de manera rápida, precisa y sin esfuerzo:
- Rápidamente: Al utilizar scripts junto con la gestión de dispositivos móviles, puedes automatizar procesos tediosos. Por ejemplo, puedes acceder a un programa de computadora en 100 dispositivos de la empresa con cero clics en lugar de hacerlo manualmente 100 veces.
- Con precisión: Un script bien escrito ejecutará consistentemente la misma acción definida cada vez, reduciendo el riesgo de errores que podrían ocurrir si un administrador humano realizara la tarea manualmente, lo que puede llevar a inconsistencias y confusiones.
- Fácilmente: Puedes lograr tareas complejas y detalladas dividiéndolas en scripts más pequeños y manejables, lo que simplifica el proceso general.
Paso 1 - Crea tu primer script #
Dirígete al panel de control de Applivery and y haz clic en Gestión de Dispositivos > Recursos(1), luego localiza la sección de Scripts (2) y haz clic en + Crear Script (3).
Aparecerá un editor de código en la pantalla.
Dentro del editor, puedes crear un nuevo script o cargar uno existente desde tu dispositivo. Esta flexibilidad facilita la adaptación de los scripts a tus necesidades.
Para crear un nuevo script, utiliza las opciones de la interfaz y empieza a escribir.
Para cargar un script existente, haz clic en Cargar desde archivo (4) en el editor, elige tu archivo de script y estará listo para ser utilizado.
Por último, debes asignarle un Nombre (5) (y opcionalmente, una descripción), y hacer clic en Crear (6).
Si necesitas ayuda para crear un script, también puedes usar nuestro AI Assistant. Simplemente haz clic en el botón correspondiente y aparecerá un cuadro de diálogo donde podrás describir el script que necesitas. Nuestro asistente lo generará para ti.
Paso 2 - Asigna scripts a los dispositivos #
Ahora, dirígete a la sección de Dispositivos (1), selecciona el dispositivo al cual quieres asignar el script, localiza la pestaña de Scripts (2), y haz clic en el botón + Asignar Script (3).
Aparecerá una vista modal que te permitirá elegir un script de la sección de scripts o cargarlo desde tu dispositivo.
También tendrás la opción de seleccionar el método de ejecución y agregar los argumentos del script:
- Once: El script se ejecutará una vez por dispositivo. Tendrás la opción de repetir la ejecución, incluso si ya se ha ejecutado.
- Bucle: El script se ejecutará cíclicamente en el intervalo de tiempo elegido.
- On-demand: El script nunca se ejecutará automáticamente y sólo se ofrecerá como elemento opcional desde Self-Service.
A continuación, puedes encontrar la lista completa de interpolaciones de etiquetas de bigote para los argumentos del script. Ten en cuenta que cada argumento debe estar separado por comillas dobles (””):
- “
{{device.id}}
“ - “
{{device.displayName}}
“ - “
{{device.serialNumber}}
“ - “
{{device.osVersion}}
“ - “
{{device.chip}}
“ - “
{{device.isAppleSilicon}}
“ - “
{{device.hostName}}
“ - “
{{user.id}}
“ - “
{{user.email}}
“ - “
{{user.name}}
“
Al hacer clic en el botón de Historial de ejecución (4), podrás ver el historial de ejecución de todos tus scripts.
También puedes acceder al historial de ejecución de un script específico haciendo clic en el propio script (5) o en los tres puntos verticales al final del script. Al hacer clic en estos puntos (6), también se mostrarán acciones adicionales:
- Editar: Editar el script.
- Desasignar: Desasignar el script del dispositivo.
- Ver: Ver el script original en la sección de activos.
- Para los scripts con el método de ejecución Once, también verás la acción Repetir ejecución, que te permitirá repetir la ejecución si ha fallado.
También puedes asignar scripts a las políticas, asegurándote de que se aplican a todos los dispositivos bajo la misma política.
Para ello, dirígete a la sección de Políticas, selecciona la política deseada y haz clic en la pestaña Scripts. El proceso será el mismo que cuando se asigna directamente a un dispositivo individual.
¡Hazlo tú mismo! #
Primero, crea un script simple e incluye los argumentos en el campo de descripción. Esto te ayudará a recordar los argumentos y asegurarte de no olvidarlos.
Luego, necesitas agregar el script a una política si deseas que se aplique a todos tus dispositivos, o puedes asignarlo a un dispositivo específico.
Una vez que hayas agregado el script seleccionando el método de ejecución y definiendo los argumentos (¡no olvides las comillas dobles!), puedes ejecutar tu script y verificar su registro de salida en el historial de ejecución.
Ejemplos de scripts #
En lugar de escribir scripts desde cero, puedes localizar un script que realice una función similar a lo que necesitas y luego personalizarlo para tus requisitos específicos. Este enfoque es comúnmente utilizado por scripters experimentados. Al encontrar scripts confiables de fuentes de confianza o reutilizar aquellos que has creado anteriormente y modificarlos para tus necesidades actuales, puedes ahorrar tiempo y obtener una mejor comprensión de cómo operan los scripts.
Por ejemplo, aquí hay algunos scripts que podrías modificar para tareas comunes de TI en macOS:
Bajar los permisos de usuario a nivel estándar #
#!/bin/bash
# Retrieve the username of the currently logged-in user
loggedInUser=$(/usr/sbin/scutil <<< "show State:/Users/ConsoleUser" | awk '/Name :/ && ! /loginwindow/ {print $3}')
# Execute the dseditgroup command to revoke the user's admin privileges
/usr/sbin/dseditgroup -o edit -d "$loggedInUser" -t user admin
Localizar la categoría de la App Store #
#!/bin/bash
# Iterate through each application in the Applications directory to identify its App Store category
# If the category is "null," the app was not obtained from the App Store
for app in /Applications/*.app; do
AppCategory=$(/usr/bin/mdls -name kMDItemAppStoreCategory "$app" | awk '{print $3}' | tr -d '"')
/bin/echo $(/usr/bin/basename $app) has a category of: "$AppCategory"
done
Cerrar una aplicación específica #
#!/bin/bash
# Execute killall to close the specific app
/usr/bin/killall "App Store"
Reiniciar el Mac si ha pasado más de una semana desde el último reinicio #
#!/bin/bash
# Capture the current timestamp in seconds
currentDate=$(/bin/date +%s)
# Retrieve the system's last boot timestamp
bootDate=$(/usr/sbin/sysctl -n kern.boottime | /usr/bin/awk -F'[ ,]' '{print $4}')
# Define the number of seconds in a seven-day period
week=604800
#echo $currentDate
#echo $bootDate
#echo $week
# Calculate the system's uptime by finding the difference between the current timestamp and the boot timestamp
uptime=$(( currentDate - bootDate ))
#echo $uptime
# If the system has been running for a week or more, initiate a reboot with a 60-second delay
if [ $uptime -ge $week ]; then
#echo "You have been booted for longer than a week"
sudo shutdown -r now --delaySeconds 60
fi