Me gustó la respuesta que sugiere un bucle "for" del shell. En mi caso, tenía nombres de subdirectorios que coincidían con los nombres de mi base de datos, así que creé arreglos y los usé en el comando.
(Pude haber hecho esto usando el directorio de datos mysql, aunque no había tenido la configuración que tenía. En mi máquina virtual bitnami esto es /opt/bitnami/mysql/data.)
matriz creada a partir subconjunto de archivos: tbtdirs = (OTC * 2015 *)
probó un comando potencialmente espeluznante primera w/"eco": para d en $ {tbtdirs [@]}; do echo mysql -pPASS -e "drop database $ d"; hecho
cayó todas las bases de datos en la matriz: para d en $ {tbtdirs [@]}; do mysql -pPASS -e "drop database $ d"; hecho
¡Trabajó como un encanto! También modificó el ciclo para eliminar subdirectorios.Utilicé la línea de comandos de Linux durante bastante tiempo antes de aprender qué tan útiles podrían ser los comandos bash.
Funcionó para mí, pero necesitaba 'soltar base de datos $ db' ya que' drop $ db' provocó un error de sintaxis –
Esto simplemente falla silenciosamente para mí. – paulwithap
La expresión regular no funciona – HorusKol