Acortar direcciones web desde el terminal

Con Twitter y la moda de los 140 caracteres, nos hemos visto obligados a recurrir a servicios que nos permitan reducir el tamaño de nuestros enlaces para conseguir de esta manera compartir toda la información posible.

Así, existen una gran variedad de sitios y servicios que nos ofrecen diferentes soluciones para acortar nuestras direcciones.

Sin embargo, es incómodo tener que abrir un sitio web simplemente para acortar una dirección web. La solución la podemos encontrar en nuestro terminal y https://tny.im/.

headerlogo.png

tny.im y el emulador de terminal

https://tny.im/ dispone de una interesante API que nos ayudará a realizar la conversión sin necesidad de acceder al sitio.

Así para conseguir acortar una dirección web (por ejemplo la de este sitio), tan solo tienes que ejecutar la siguiente orden en un emulador de terminal,

echo `wget -qO- \&format=simple\&url=https://atareao.es`

La cual arroja el siguiente resultado,

https://tny.im/IviUj

Además también puedes hacer la operación inversa, es decir, pasar de una dirección acortada a su versión normal, para lo que tendrás que ejecutar la siguiente orden,

echo `wget -qO- \&format=simple\&shorturl=https://tny.im/IviUj`

Ahora bien, lo cierto es que ejecutar estas órdenes no es nada práctico, resulta más cómodo ir a la página web y hacer las operaciones. Sin embargo, esto cambia si creamos los correspondientes alias en /.bashrc. Para ello, al final del archivo /.bashrc añadimos lo siguiente,

tny()
{
echo `wget -qO- \&format=simple\&url=$1`
}
untny()
{
echo `wget -qO-   \&format=simple\&shorturl=$1`
}

Una vez hecho esto, sal del emulador de terminal y vuelve a entrar, y ya podrás acortar tus direcciones fácilmente, para ello tan solo tienes que ejecutar la siguiente orden,

tny https://atareao.es

Y para obtener la dirección original

untny https://tny.im/IviUj

Más información,

9 comentarios en “Acortar direcciones web desde el terminal

  1. JO
    Jose hace 9 años

    Funciona perfecto. Gracias! 😀

  2. EM
    emeoa hace 9 años

    oies brother no me funka para fish, para bash si pero para fish no, como seria la sentencia

    1. EL
      El atareao hace 9 años

      Tienes que definir las siguientes funciones en ~/.config/fish/functions

      function tny
      wget -qO- «http://tny.im/yourls-api.php?action=shorturl&format=simple&url=$argv»
      echo » »
      end

      function untny
      wget -qO- «http://tny.im/yourls-api.php?action=expand&format=simple&shorturl=$argv»
      echo » »
      end

      Saludos

      1. EM
        emeoa hace 9 años

        No se supone que para fish es en /etc/fish/fish.config .. tambien encontre esto: https://gist.github.com/gbl08ma/6115095 lo interesante de este script es que puedes invocar el comando (acortador) desde cualquier shell; ya sea fish bash o zsh

        1. EL
          El atareao hace 9 años

          Hola emeoa,

          Ambas funciones las he probado en fish y funcionan correctamente, aunque la solución que aportas tu me gusta bastante mas..

          Gracias.

  3. KO
    Kotori Bird hace 9 años

    No se por que pero el untny no me esta devolviendo nada 🙁

    1. EL
      El atareao hace 9 años

      Hay un error, donde dice:
      expand &format
      debe decir,
      expand&format
      Debe estar junto. Espero que esto haya solucionado tu problema. Gracias.

      1. KO
        Kotori Bird hace 9 años

        Lo hizo. Muchas gracias c:

  4. MA
    Marpario hace 9 años

    Existira una forma de enlazar esas url acortadas a la cuenta de tny?

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *