Moosh: gestiona Moodle por línea de comandos y realiza tareas comunes rápidamente.

Gestionar muchas de las tareas de Moodle desde el backend, puede ser muy tedioso. Todos hemos tenido este problema. El desarrollador de Moosh decidió hacer algo para arreglarlo y, basándose en Drush (la línea de comandos de Drupal), desarrolló Moosh.
Este tipo de herramientas son muy útiles, y también existen, por ejemplo, en WordPress con wp-cli, del que hablaremos otro día.

Básicamente Moosh es como tener una serie de scripts que realizan tareas que normalmente implicarían muchos pasos, o muchas búsquedas. Todo con unos simples comandos.

Como usar Moosh.

Si quieres usar Moosh, tienes varias opciones. Puedes descargarlo como paquete de Ubuntu, puedes instalar un plugin de Moodle o instalarlo con composer desde Git.
Nota: no copies los ficheros de Moosh dentro de la carpeta de Moodle porque puedes romper tu intalación.

Una vez tengas Moosh instalado, puedes disponer de todos los comandos que aparecen en esta lista (más de 80). Con la sintaxis general siguiente.

moosh <comando> <opciones>

Algunos de los comandos útiles que tiene Moosh, para que te hagas una ídea, son:

  • moosh cache-clear -> Vacía la caché de Moodle
  • moosh audit-passwords -r -> audita las contraseñas de los usuarios para ver si son fácilmente hackeables, Muestra las que lo son.
  • moosh user-create -.> Crea un usuario. Por ejemplo:
moosh user-create --password pass --email me@example.com --digest 2 --city Szczecin --country PL --institution "State University" --department "Technology" --firstname "first name" --lastname name testuser
  • moosh user-delte -> borra uno o varios usuarios. Por ejemplo;
moosh user-delete testuser1 testuser2
  • moosh info-plugins -> muestra la lista de plugins instalados y la carpeta de instalación.
moosh info-plugins
  • moosh sql-dump -> descarga la base de datos de sql a un fichero (hace copia de la base de datos).
moosh sql-dump > backup.sql
  • moosh file-delete -> Borra ficheros tanto del servidor como su registro en la base de datos. Ejemplos:

    Borra los ficheros de id 10, 20 y 30.
moosh file-delete 10 20 30

Borra ficheros de más de 100 bytes

moosh file-list -i 'filesize>1000' | moosh file-delete -s

Vacía la papelera:

moosh file-delete --flush

Borra todas las copias automatizadas.

moosh file-list -i 'component="backup" AND filearea="automated"' | moosh file-delete -s
moosh file-delete --flush

Tienes comandos para restaurar cursos desde ficheros de backup, puedes borrar varios cursos a la vez, ….Y muchos otros. Esperamos que os resulte útil Moosh, cuando tienes que gestionar Moodles de cierto tamaño, es una gran ayuda.