tr (abreviatura de translate ) es una utilidad de línea de comandos útil que traduce y / o elimina caracteres de la entrada stdin y escribe en stdout. Es un programa útil para manipular texto en la línea de comandos.
En este artículo, explicaremos algunos ejemplos útiles de comandos tr para principiantes de Linux.
La sintaxis para ejecutar el comando tr es la siguiente, donde los caracteres en SET1 se traducen a caracteres en SET2 .
$ tr flags [SET1] [SET2]
Ejemplos de comandos tr de Linux
1. Un caso de uso simple del comando tr es cambiar todas las letras minúsculas en el texto a mayúsculas y viceversa, como se muestra a continuación.
$ cat linux.txt linux is my life linux has changed my life linux is best and everthing to me..:)
$ cat domains.txt | tr [:lower:] [:upper:] LINUX IS MY LIFE LINUX HAS CHANGED MY LIFE LINUX IS BEST AND EVERTHING TO ME..:)
2. Alternativamente, puede usar el siguiente comando para cambiar todas las letras minúsculas a mayúsculas en un archivo como se muestra.
$ cat linux.txt | tr [a-z] [A-Z] LINUX IS MY LIFE LINUX HAS CHANGED MY LIFE LINUX IS BEST AND EVERTHING TO ME..:)
3. Para guardar los resultados escritos en stdout en un archivo para su posterior procesamiento, use la función de redirección de salida del shell (>)
como se muestra.
$ cat linux.txt | tr [a-z] [A-Z] >output.txt $ cat output.txt LINUX IS MY LIFE LINUX HAS CHANGED MY LIFE LINUX IS BEST AND EVERTHING TO ME..:)
4. Con respecto a la redirección, puede enviar la entrada a tr usando la redirección de entrada y redirigir la salida a un archivo usando el mismo comando, como se muestra.
$ tr [a-z] [A-Z] < linux.txt >output.txt
5. Otra característica útil es que puede usar la -d
bandera para eliminar caracteres, por ejemplo, para eliminar los espacios en los nombres de dominio usando el siguiente comando.
$ cat domains.txt www. tecmint. com www. fossmint. com www. linuxsay. com
$ cat domains.txt | tr -d '' www.tecmint.com www.fossmint.com www.linuxsay.com
6. Si hay caracteres repetidos en una secuencia (por ejemplo, espacios dobles) en el texto que está procesando, puede usar la -s
opción para apretar los caracteres dejando solo una ocurrencia.
$ cat domains.txt www.tecmint.....com www.fossmint.com www.linuxsay.com
$ cat domains.txt | tr -s '' www.tecmint.com www.fossmint.com www.linuxsay.com
7. La -c
opción le dice a tr que use el complemento dado de SET . En este ejemplo, queremos eliminar todas las letras y solo dejar el UID .
$ echo "My UID is $UID" | tr -cd "[:digit:]n" OR $ echo "My UID is $UID" | tr -d "a-zA-Z"
8. A continuación se muestra un ejemplo de cómo dividir una sola línea de palabras (oración) en varias líneas, donde cada palabra aparece en una línea separada.
$ echo "My UID is $UID" My UID is 1000 $ echo "My UID is $UID" | tr " " "n" My UID is 1000
9. En relación con el ejemplo anterior, también puede traducir varias líneas de palabras en una sola oración como se muestra.
$ cat uid.txt My UID is 1000 $ tr "n" " " < uid.txt My UID is 1000
10. También es posible traducir un solo carácter, por ejemplo, un espacio en un “ : ”
carácter, de la siguiente manera.
$ echo "Tecmint.com =>Linux-HowTos,Guides,Tutorials" | tr " " ":" Tecmint.com:=>Linux-HowTos,Guides,Tutorials
Hay varios caracteres de secuencia que puede usar con tr para obtener más información, consulte la página de manual de tr .
$ man tr
¡Eso es todo! tr es un comando útil para manipular texto en la línea de comandos. En esta guía, mostramos algunos ejemplos útiles de uso del comando tr para principiantes de Linux. Puede compartir sus pensamientos con nosotros a través del formulario de comentarios a continuación.
Comandos de Linux