El comando tr, abreviatura de translate (traducir), es una utilidad de línea de comandos en Linux que traduce o elimina caracteres de la entrada estándar. Es una herramienta útil para la manipulación simple de texto y se utiliza a menudo con tuberías (pipes) para procesar la salida de otros comandos. La funcionalidad trtranslate es una parte central del procesamiento de texto.
Traducción Básica de Caracteres
El uso más común de tr es sustituir un conjunto de caracteres por otro. Por ejemplo, puedes traducir fácilmente todos los caracteres en minúsculas a mayúsculas.
$ echo "hello world" | tr a-z A-Z
HELLO WORLD
En este ejemplo, canalizamos (piped) la salida de echo al comando tr. Luego, el comando tr tradujo el rango de caracteres a-z a los caracteres correspondientes en el rango A-Z.
Eliminación de Caracteres con -d
Otra característica potente es la capacidad de eliminar caracteres específicos usando la opción -d (delete/eliminar). Esto es particularmente útil para limpiar texto. Por ejemplo, si deseas eliminar todos los dígitos de una cadena, puedes usar linux tr -d.
$ echo "My address is 123 Main Street" | tr -d '0-9'
My address is Main Street
Aquí, el comando tr -d eliminó cada carácter del conjunto especificado ('0' a '9') del flujo de entrada. Este es un patrón común para los usuarios de tr -d linux.
Comprimir Caracteres Repetidos
El comando tr también puede "comprimir" (squeeze) caracteres repetidos en una sola instancia usando la opción -s (squeeze/comprimir). Esto es excelente para normalizar texto con espacios en blanco adicionales.
$ echo "Hello World, how are you?" | tr -s ' '
Hello World, how are you?
En este caso, tr -s ' ' reemplazó secuencias de múltiples espacios con un solo espacio, haciendo la salida mucho más limpia.