Traducir desde consola o terminal en Linux (Translate Shell).

Traducir idiomas en la terminal de Linux es bastante sencillo usando Translate Shell (previamente llamado Google Translate CLI).
Translate Shell permite traducir textos, páginas web y archivos desde la consola a uno  o mas idiomas simultaneamente, también permite detectar idiomas, traducir archivos, entre otras funcionalidades.
Con Translate Shell podemos usar Traductor Google, o el traductor de Bing, también los traductores de Yandex y Apertium, por defecto Translate Shell usa el de Google.


Antes de descargar Translate Shell hay que instalar el paquete gawk ejecutando en la consola:

# apt install gawk -y
Traducir en terminal desde Linux

Una vez instalado, descarga Translate Shell mediante wget ejecutando:

# wget git.io/trans
Traducir desde consola en Linux


Una vez descargado hay que darle a Translate Shell permiso de ejecución mediante el comando:

# chmod +x trans
Traducir en Linux bash

Translate Shell ya está listo para ser ejecutado. En el primer ejemplo se muestra cómo traducir una única palabra del inglés al español desde la terminal. Por defecto si no definimos un idioma destino, el traductor va a traducir al ingles, si no definimos un idioma fuente Translate Shell lo detectará. Para traducir la palabra “teclado” al inglés ejecuta:




Nota: las comillas simples o apóstrofes son opcionales cuando traducimos de a una palabra, pero obligatoria si traducimos frases.

./trans ‘teclado’

Efectivamente se puede ver que el idioma fuente fue detectado con éxito y la palabra traducida por defecto al inglés.

Ahora traduzcamos la misma palabra del inglés al español. Para especificar el idioma destino vamos a usar dos puntos “:” seguidos por el idioma destino como en el siguiente ejemplo:

./trans :es keyboard
Traducir usando comandos linux

Como se puede ver la traducción es perfecta y esta vez funcionó sin las comillas simples que para palabras aisladas son opcionales.

Ahora veamos cómo traducir textos de más de una palabra, recordemos que en estos casos es necesario usar comilla simple o apostrofe. Veamos cómo traducir del inglés al español “Follow Linux.Lat on Facebook and Twitter” ejecutando el siguiente comando en la terminal:

./trans :es 'Follow Linux.Lat on Facebook and Twitter'


Traducir a varios idiomas simultáneamente desde la terminal:

Traducir una palabra o texto a varios idiomas simultáneamente también es sencillo con Translate Shell, en el próximo ejemplo mostramos cómo traducir la frase “Linux Latinoamérica tiene buenos tutoriales de Linux” al francés y portugues. Para agregar más idiomas fuente simplemente añadimos los que queremos separados por un signo +.

./trans :fr+pt 'Linux Latinoamérica tiene buenos tutoriales de Linux'
Traducir en terminal Linux

Hasta ahora permitimos que Translate Shell detecte el idioma automaticamente, pero algunas veces puede fallar o confundirse entre idiomas similares por lo que también es posible especificarlo antes de los dos puntos “:”.

El próximo ejemplo muestra cómo traducir del español al italiano y al portugues la frase “Aprende a traducir en la terminal en Linux Latinoamérica”:

./trans es:it+pt ‘Aprende a traducir en la terminal en Linux Latinoamérica’
traducir página web desde consola


Translate Shell también permite detectar idiomas sin llevar a cabo el proceso de traducción, para detectar un idioma simplemente usamos el parámetro -id como en el próximo ejemplo:

 ./trans -id "Detect this language and print it"
Traducir paginas web desde terminal


Traducir una página web desde la consola:

Traducir una página web desde la console o terminal en Linux también es posible con Translate Shell:

Para traducir https://linux.lat al ingles podemos ejecutar:

# ./trans :en https://linux.lat

Translate Shell nos retornara una URL con la versión de https://linux.lat traducida al ingles.





También podemos traducir archivos especificando la ubicación con el prefijo “file://” como en el próximo ejemplo en el que se traduce al español el archivo llamado “tutorialtraduccion

./trans :es file://tutorialtraduccion
Traducir archivo desde terminal



Además de lanzar comandos, Translate Shell puede ejecutarse en modo interactivo, el próximo ejemplo muestra cómo ejecutar Translate Shell en modo interactivo para traducir del inglés al español desde la terminal:

# ./trans -shell en:es
traductor consola terminal linux

Como ven tras ejecutar el programa en modo interactivo sólo hizo falta escribir el contenido a traducir sin parámetros.


Por ultimo, si tenemos Mplayer instalado podemos escuchar las traducciones. Para eso usamos el parámetro -p (Play) como en el próximo ejemplo:

./trans es: -p 'reproducir esto en inglés'



Pueden encontrar más información en la página oficial de desarrollo de Translate Shell: https://github.com/soimort/translate-shell


Espero que este tutorial sobre Traducir desde consola o terminal en Linux (Translate Shell) haya sido util, de haber sido así aconsejo seguir leyendo 4 navegadores para navegar la web desde la consola en Linux.