Inicio - page 2

Compilador LALR en “El Día del Tentáculo”

Compilador LALR en “El Día del Tentáculo”

Hoy os dejo una curiosidad que me ha arrancado una buena sonrisa. Hace bastantes años que jugué al juego “El Día del Tentáculo” (Day of the Tentacle, en inglés). Me lo habré pasado unas 8 0 9 veces, a veces juego sólamente por recordar viejos tiempos.

 

El Día del Tentáculo

El Día del Tentáculo

 

 

Pues bien, hoy me he dado cuenta de algo en lo que hasta ahora no había caído. Si habéis jugado, sabréis que hay un momento en el que el “gordo heavy” Hoagie tiene que dormir a un caballo leyéndole un libro de texto.

Continue reading →

Notificaciones de escritorio desde la consola

Notificaciones de escritorio desde la consola

El comando notify-send permite lanzar notificaciones de escritorio para informar de determinados eventos. Son mensajes como los que vemos cuando recibimos un email, cuando una descarga termina, cuando la batería se acaba y similares.

En ocasiones puede interesarnos que un script que hemos escrito nos lance algún aviso visible aunque no tengamos abierta una consola. Si no queremos tener que estar revisando los logs contínuamente para saber si nuestro evento se ha producido el comando notify-send puede resultarnos de gran utilidad.

Aquí un ejemplo de como se utiliza, pero para ver toda la información lo mejor es acudir al manual.

El fragmento anterior es un mensaje que tengo puesto yo en un script que me descarga backups del servidor donde tengo alojadas las webs cada semana. En próximas entregas os lo enseñaré por si os puede resultar útil. Pero antes os hablaré del comando crontab, que permite programar tareas para que se ejecuten periódicamente.

Pero para todo eso habrá que esperar, que ahora me voy a dormir :-).

 

Acceder al scope de AngularJS desde la consola del navegador

Acceder al scope de AngularJS desde la consola del navegador

Hoy he necesitado hacer unas pruebas y correcciones en el código de un proyecto pero no tenía acceso a la VPN, así que no podía entrar ni a los entornos de pruebas ni al repositorio de código.

Se trataba de una aplicación hecha con AngularJS, así que se me ha ocurrido que, al ser Javascript, a lo mejor podía acceder a las variables desde la consola y hacer las pruebas directamente desde el navegador.

Un tal Michal hablaba de cómo obtener referencias al $scope en esta entrada de su blog. Siguiendo sus ejemplos he conseguido lo que necesitaba, así que lo dejo aquí por si a alguien le sirve:

Una cosa que no sabía es que AngularJS añade a jQuery algunas opciones y utilidades, como la que vais a ver a continuación. Podemos obtener el nodo jQuery del que queremos sacar el $scope, y luego llamar a su método scope, que ha sido añadido por Angular para facilitarnos la vida. Veamos:

Otra forma de conseguir el $scope es utilizar la función element de AngularJS, que espera el nodo asociado. Este parámetro podemos pasarlo de distintas formas, como por ejemplo:

Una vez lo tenemos podemos, por ejemplo, modificar una función de validación para que diga que los datos siempre son correctos:

Leyendo la documentación seguro que hay muchas más cosas interesantes para contar, pero eso ya lo dejo para otro día.

Hasta la próxima! 🙂

 

Acceder por SSH sin utilizar la contraseña

Acceder por SSH sin utilizar la contraseña

Estos días me he visto en la necesidad de copiar archivos entre diferentes máquinas y he tenido que crear scripts para automatizar las tareas. Me he topado con un problema con el que no me había encontrado antes, y es que el comando scp pide al usuario que teclee la contraseña. ¿Cómo voy a programar una copia si no estoy delante del ordenador para introducir la contraseña?

En esta entrada voy a explicar cómo acceder a un servidor por SSH sin utilizar la contraseña. En su lugar, utilizaremos un par de claves pública y privada con el que nos identificaremos ante el servidor al que queremos conectarnos.

En primer lugar, generamos nuestras claves:

Dejamos la contraseña en blanco. El programa generará una clave privada (que guardaremos en nuestra máquina) y una pública que daremos a diestro y siniestro. Estas claves se crean por defecto en la carpeta ~/.ssh.

Ahora hay que añadir nuestra clave pública al archivo authorized_keys del servidor remoto, que se encuentra también en la carpeta ~/.ssh del usuario que vamos a utilizar.

Listo, si ahora accedemos de nuevo ya no nos volverá a pedir la contraseña.

 

Comparar “de un vistazo rápido” dos bases de datos

Comparar “de un vistazo rápido” dos bases de datos

Hoy os dejo un pequeño script que me he preparado en un rato y que permite comparar dos bases de datos que pueden pertenecer a dos usuarios diferentes y estar en dos servidores diferentes.

No penséis que el script va a hacer maravillas, no va a comprobar el contenido ni va a generar un informe de la leche. Sólo revisa y compara el número de filas que hay en cada tabla. Para ello, obtiene un listado de las tablas de la primera base de datos, y para cada una de ellas el número de filas que hay. Después, para cada tabla, mira a ver si existe en la segunda base de datos y, de ser así, muestra el número de filas que hay allí. El resultado lo muestra en formato CSV que luego puede verse como hoja de cálculo.

A mí va a resultar imprescindible estos días, ya que estoy haciendo una migración de una base de datos en varias fases, y necesito ir comparando las diferentes versiones que obtengo para ver que no se me han ido perdiendo datos por el camino.

Continue reading →

Page 2 of 6 1 2 3 4 5 ... Last →