Publi

  • Conocer la velocidad de descarga de nuestra conexión desde terminal

    A la hora de hacer un test de velocidad, muchas veces recurrimos a páginas que ofrecen aplicaciones Flash para hacer el test de velocidad, muchas veces Flash nos puede resultar incómodo, otras veces, estamos en un ordenador tan antiguo que no tira bien de Flash.

    Estos tests, suelen descargar un fichero relativamente grande, y dividen tamaño del archivo descargado por el tiempo empleado en su descarga, con lo que nos devuelven los Mb/s a lo que hemos descargado dicho archivo; suelen medir la velocidad de un conjunto muy complejo de elementos que están funcionando a la vez (por mencionar algunos de los más importantes):

    • El servidor que nos manda la información: Si el servidor está saturado, tal vez no nos mande la información al máximo de su velocidad
    • La conexión del servidor: Si la velocidad de subida del servidor es más pequeña que la velocidad de bajada del ordenador a analizar (por ejemplo si hacemos que nuestro ordenador envíe el test a casa de un amigo, el test no saldrá bien), si el proveedor de servicios ha penalizado la transferencia del servidor (a lo mejor por consumo excesivo de ancho de banda), o si el servidor tiene muchas peticiones simultáneas, tiene que repartir su ancho de banda entre todos.
    Leer artículo completo
  • Enviar notificaciones con sonido en MATE

    Hace unos días estuve hablando de cómo enviar notificaciones en nuestros scripts. Bien, estas notificaciones por el momento, eran mudas, aunque hay un método sencillo para que cobren algo de vida en MATE y al aparecer emitan un sonido.

    Estoy particularizando para MATE, porque es el notificador que estoy utilizando (aunque mi entorno es XFCE), puede que en otros notificadores también funcione.

    El método es sencillo, tenemos que insertar una propiedad o hint a la notificación llamado «sound-file» de tipo string.… Leer artículo completo

  • Script para activar y desactivar el touchpad de mi portátil

    touchpads
    Muchos portátlies traen un control hardware para activar y desactivar el touchpad, en cambio otros lo traen por software, por lo que debemos ser nosotros los encargados de activar y desactivar el touchpad cuando se accione la tecla.

    Para ello podemos utilizar este pequeño script:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    #!/bin/bash
    ICONS_PATH=$HOME/scripts/img
    OFF=`synclient | grep TouchpadOff | grep 0`

    if [ -z "$OFF" ]
    then
        synclient TouchpadOff=0
        notify-send -i $ICONS_PATH/touchpad-enable-icon.png -a TDE "Touchpad activado"
    else
        synclient TouchpadOff=1
        notify-send -i $ICONS_PATH/touchpad-disable-icon.png -a TDE "Touchpad desactivado"
    fi

    Lo primero que hace es determinar si el touchpad está activado o desactivado, y si está activado, lo desactiva y vicevesa, muy sencillo.… Leer artículo completo

  • Activando teclas para obtener nuevas funcionalidades.

    tecladoEn ocasiones, adquirimos un teclado nuevo, con muchas teclas especiales, o si compramos un nuevo portátil, seguramente éste tenga varias teclas especiales que el sistema por defecto no identifica.
    El problema la mayoría de las veces, es que tenemos una tecla, cuyo código no es reconocido. Para ello tenemos la utilidad xmodmap, podemos hacer que una tecla determinada se comporte como otra. Tenemos un listado completo de los códigos de las teclas aquí [Link original] y aquí [Original].… Leer artículo completo

  • Introducir el resultado de una consulta SELECT de mysql en un Array [BASH]

    data

    ¡Bash es una pasada! Es capaz de dejarnos hacer maravillas en poco tiempo y de automatizar lo inautomatizable, en este caso, traigo un ejemplo más, de cómo un código muy corto es capaz de presentarnos los resultados de una consulta SELECT de mysql:

    Los datos de prueba provienen de uno de mis proyectos: Málaga Bloguea donde muestro las últimas novedades de blogs de Málaga.

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    #!/bin/bash

    OLDIFS=IFS
    MYSQL_USER=#Usuario Mysql
    MYSQL_PASSWORD=#Password Mysql
    MYSQL_HOST="localhost"
    # IFS personalizado, para poder delimitar los campos correctamente
    IFS="`echo -e "\t\n\r\f"`"

    # Declaramos la variable como array, no es estrictamente necesario, pero sí un poco más correcto
    declare -a IPS

    # Generamos la consulta (Si vamos a utilizar un juego de caracteres determinado, como
    # UTF8, debemos especificar primero para evitar sorpresas.
    Leer artículo completo
  • Enviar notificaciones desde nuestros scripts con notify-send

    notificacionEs un tema que se ha tratado varias veces en otros blogs y tutoriales a lo largo de Internet, y es que algo que tienen en común muchos entornos de escritorio de GNU/Linux en la actualidad es un demonio de notificaciones, éste recibe mensajes de las aplicaciones que quieran escribir una notificación (valga la redundancia), y los muestra en pantalla.
    Lo bueno que tiene hacerlo así es que cualquier aplicación que quiera escribir algo, sólo tiene que enviar el texto y sólo tenemos un dibujante, eso reduce bastante el coste en memoria (si tenemos cuatro aplicaciones y las cuatro se dedican a lo mismo, estamos desperdiciando memoria), por otra parte, unifica el estilo (en el mismo ejemplo de antes, tendríamos cuatro formas de dibujar distintas y a lo mejor, cada una con un estilo diferente) y por otra parte, dada la filosofía que siguen estos proyectos, nos proporcionan herramientas para enviar notificaciones fácilmente.… Leer artículo completo

  • Ejecutar scripts mientras inicia el sistema

    botas

    En ocasiones, queremos automatizar tareas al arranque del ordenador, tal vez para ofrecer asistencia remota (y enviarnos la IP del ordenador), actualizar una base de datos, correr scripts en una página web, hacer que el ordenador emita un sonido, inicializar un sistema antirrobo, o incluso interactúe con un arduino.

    En muchas ocasiones, incluir nuestros scripts en /etc/rc.local basta, en Debian y derivadas lo encontramos fácilmente, en otras distribuciones también hay forma de hacerlo, aunque si necesitamos algo más complicado, como por ejemplo ejecutar varios scripts en un directorio determinado, en varios runlevels y que cuando se apague el ordenador se ejecuten otros scripts diferentes he hecho un pequeño init-script.… Leer artículo completo

  • [Bash] Llamar a una variable cuyo nombre lo contiene otra variable

    numbers

    Imaginemos el caso en que tenemos tres variables (ROJO=5 ; VERDE=6 ; AZUL=7), y una función a la que le pasaremos el nombre del color y nos devolverá su valor (así visto parece tontería, pero luego podremos normalizarlo, aclararlo, oscurecerlo, etc).

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    ROJO=5
    VERDE=6
    AZUL=7

    function get_color()
    {
       echo ${!1}
    }

    get_color ROJO

    Efectivamente si en Bash escribimos ${!VARIABLE} no nos devuelve el nombre que contiene la variable, sino que devuelve el valor de la variable cuyo nombre es $VARIABLE.… Leer artículo completo

  • mayúsculas y minúsculas en BASH (toupper(), tolower()) [copia y pega]

    mayuscula En ocasiones, es muy útil crear scripts en bash, aunque en ocasiones debemos controlar las mayúsculas y minúsculas, por ejemplo renombrando archivos, escribiendo informes o para ajustarse a diferentes convenciones a la hora de hacer un programa. Aquí dejo ejemplos de funciones tipo strtoupper(), strtolower(), por decir un equivalente en PHP.

    Hay opciones, la elección de alguna de estas opciones depende del entorno en que nos encontremos, ya sea BASH, algún otro clon, y dispongamos de awk o tr.… Leer artículo completo

  • Generar texto e implantarlo en una imagen desde PHP

    En ocasiones, se puede presentar la necesidad de introducir en nuestros proyectos una imagen cuyo contenido sea un texto, y sobre todo necesitamos integrarlo dentro de nuestro contenido, intentando que no se note que es una imagen, a no se que seleccionen el contenido para copiarlo.

    Una de las principales utilidades de esto es evitar el SPAM al escribir nuestra dirección de e-mail en una web. Muchos clientes prefieren enviar un e-mail en lugar de utilizar un formulario de contacto y tenemos que satisfacerles, sin arriesgar la seguridad de nuestro sistema, en el sentido de que hay cientos de motores que se dedican a rastrear webs en busca de direcciones de e-mail (lo cual es muy sencillo de hacer con expresiones regulares, por ejemplo).… Leer artículo completo