Resumen
tr (translate), como su nombre indica, sirve para 'traducir' o 'reemplazar' caracteres. Por ejemplo, está especializado en tareas sencillas de transformación a nivel de caracteres, como cambiar minúsculas a mayúsculas, un carácter específico por otro, o un salto de línea por un espacio. A diferencia de `sed` o `awk`, que admiten coincidencias de patrones complejas a nivel de línea, `tr` es muy rápido y eficiente para el procesamiento a nivel de carácter.
Características clave
Las principales características del comando `tr` son las siguientes:
- Transforma o elimina texto carácter por carácter.
- Recibe datos solo a través de la entrada estándar (stdin).
- No utiliza expresiones regulares.
- Ampliamente utilizado con pipes (`|`) para procesar la salida de otros comandos.
Sintaxis básica de tr
El comando `tr` toma básicamente dos cadenas (conjuntos) como argumentos.
- `tr 'set1' 'set2'`: Transforma los caracteres en `set1` a los caracteres correspondientes en `set2` en una relación 1:1.
- `tr -d 'set1'`: Elimina todos los caracteres que se encuentran en `set1`.
Opciones principales
Hemos agrupado las opciones de uso frecuente del comando `tr` según su propósito.
1) Opciones de función
2) Caracteres especiales y conjuntos
Comando generado:
Combina los comandos.
Descripción:
`tr` Ejecutando el comando.
Combina las opciones anteriores para ejecutar virtualmente los comandos junto con la IA.
Ejemplos de uso
Explore las diversas formas de usar el comando `tr` con estos ejemplos.
Convertir minúsculas a mayúsculas
echo 'hello world' | tr '[:lower:]' '[:upper:]'
Convierte las letras minúsculas recibidas por la entrada estándar a mayúsculas y las imprime.
Eliminar caracteres específicos
echo 'hello world' | tr -d ' '
Elimina todos los espacios (` `) del texto.
Convertir saltos de línea a espacios
cat file.txt | tr '\n' ' '
Convierte los caracteres de salto de línea (`\n`) del contenido de un archivo a espacios (` `) y los imprime en una sola línea.
Comprimir espacios duplicados
echo 'hello world' | tr -s ' '
Comprime secuencias consecutivas de espacios en un solo espacio. La opción `-s` realiza la función de compresión de cadenas duplicadas.
Convertir mayúsculas a minúsculas
echo 'HELLO WORLD' | tr 'A-Z' 'a-z'
Convierte las letras mayúsculas recibidas por la entrada estándar a minúsculas y las imprime.
Consejos y precauciones
Aquí se resumen los puntos a tener en cuenta al usar el comando `tr`.
Consejos
- `tr` no acepta nombres de archivo directamente como argumentos. Siempre debe pasar el texto a través de la entrada estándar utilizando comandos como `cat` o `echo`.
- Es recomendable usar comillas simples (`'`) al pasar cadenas como argumentos para evitar que el shell interprete caracteres especiales.
- `tr` es más simple en funcionalidad que `sed` o `awk`, pero tiene la ventaja de ser mucho más rápido para tareas de transformación a nivel de carácter.