comando tr linux parte segunda
Tabla de contenido:
- Cómo usar el comando
tr
- Combinando opciones
- Ejemplos de comandos Tr
- Convertir minúsculas en mayúsculas
- Eliminar todos los caracteres no numéricos
- Pon cada palabra en una nueva línea
- Eliminar líneas en blanco
- Imprima directorios
$PATH
en una línea separada - Conclusión
tr
es una utilidad de línea de comandos en sistemas Linux y Unix que traduce, elimina y exprime caracteres de la entrada estándar y escribe el resultado en la salida estándar.
El comando
tr
puede realizar operaciones como eliminar caracteres repetidos, convertir mayúsculas a minúsculas y reemplazar y eliminar caracteres básicos. Por lo general, se usa en combinación con otros comandos a través de tuberías.
En este tutorial, le mostraremos cómo usar el comando
tr
través de ejemplos prácticos y explicaciones detalladas de las opciones más comunes.
Cómo usar el comando
tr
La sintaxis para el comando
tr
es la siguiente:
tr OPTION… SET1
tr
acepta dos conjuntos de caracteres, generalmente con la misma longitud, y reemplaza los caracteres de los primeros conjuntos con los caracteres correspondientes del segundo conjunto.
Un
SET
es básicamente una cadena de caracteres, incluidos los caracteres especiales con barra invertida.
En el siguiente ejemplo,
tr
reemplazará todos los caracteres de la entrada estándar (linuxize), asignando los caracteres del primer conjunto con los correspondientes del segundo conjunto.
echo 'linuxize' | tr 'lin' 'red'
Cada aparición de
l
se reemplaza con
r
,
i
con
e
,
n
con
d
:
reduxeze
Los conjuntos de caracteres también se pueden definir utilizando rangos de caracteres. Por ejemplo, en lugar de escribir:
echo 'linuxize' | tr 'lmno' 'wxyz'
puedes usar:
echo 'linuxize' | tr 'ln' 'w-z'
Cuando se usa la opción
-c
(
--complement
),
tr
reemplaza todos los caracteres que no están en SET1.
En el ejemplo a continuación, todos los caracteres, excepto "li", se reemplazarán con el último carácter del segundo conjunto:
echo 'linuxize' | tr -c 'li' 'xy'
liyyyiyyy
Como habrás notado, la salida anterior tiene un carácter visible más que la entrada. Esto se debe a que el comando
echo
imprime un carácter invisible de nueva línea
que también se reemplaza con
y
. Para hacer eco de una cadena sin una nueva línea, use la opción
-n
.
La opción
-d
(
--delete
) le dice a
tr
que elimine los caracteres especificados en SET1. Al eliminar caracteres sin apretar, especifique solo un conjunto.
El siguiente comando eliminará los caracteres
l
,
i
y
z
:
echo 'Linuxize' | tr -d 'liz'
El carácter
L
no se elimina porque la entrada incluye una
L
mayúscula, mientras que el carácter
l
en el SET está en minúsculas.
Lnuxe
La opción
-s
(
--squeeze-repeats
) reemplaza una secuencia de ocurrencias repetidas con el conjunto de caracteres en el último SET.
En el siguiente ejemplo,
tr
elimina los caracteres de espacio repetidos:
echo "GNU \ Linux" | tr -s ' '
GNU \ Linux
Cuando se utiliza SET2, la secuencia del carácter especificado en SET1 se reemplaza por SET2.
echo "GNU \ Linux" | tr -s ' ' '_'
GNU_\_Linux
La opción
-t
(
--truncate-set1
) obliga a
tr
a truncar SET1 a la longitud de SET2 antes de realizar un procesamiento adicional.
Por defecto, si SET1 es mayor que SET2
tr
, reutilizará el último carácter de SET2. Aquí hay un ejemplo:
echo 'Linux ize' | tr 'abcde' '12'
La salida muestra que el carácter
e
de SET1 coincide con el último carácter de SET2, que es
2
:
Linux iz2
Ahora, use el mismo comando con la opción
-t
:
echo 'Linux ize' | tr -t 'abcde' '12'
Linux ize
Puede ver que se eliminan los últimos tres caracteres del SET1. SET1 se convierte en 'ab', la misma longitud que SET2, y no se realiza ningún reemplazo.
Combinando opciones
El comando
tr
también le permite combinar sus opciones. Por ejemplo, el siguiente comando primero reemplaza todos los caracteres excepto
i
con
0
y luego exprime los
0
caracteres repetidos:
echo 'Linux ize' | tr -cs 'i' '0'
Ejemplos de comandos Tr
En esta sección, cubriremos algunos ejemplos de usos comunes del comando
tr
.
Convertir minúsculas en mayúsculas
La conversión de minúsculas a mayúsculas o inversa es uno de los casos de uso típicos del comando
tr
.
coincide con todos los caracteres en minúscula y
coincide con todos los caracteres en mayúscula.
echo 'Linuxize' | tr '' ''
LINUXIZE
En lugar de clases de caracteres, también puedes usar rangos:
echo 'Linuxize' | tr 'az' 'A-Z'
Para convertir mayúsculas a minúsculas, simplemente cambie los lugares de los conjuntos.
Eliminar todos los caracteres no numéricos
El siguiente comando elimina todos los caracteres no numéricos:
echo "my phone is 123-456-7890" | tr -cd
significa todos los caracteres de dígitos, y al usar la opción
-c
, el comando elimina todos los caracteres que no son dígitos. La salida se verá así:
Pon cada palabra en una nueva línea
Para poner cada palabra en una nueva línea, necesitamos unir todos los caracteres no alfanuméricos y reemplazarlos con una nueva línea:
echo 'GNU is an operating system' | tr -cs '' '\n'
Eliminar líneas en blanco
Para eliminar las líneas en blanco, simplemente presione los caracteres repetitivos de nueva línea:
tr -s '\n' < file.txt > new_file.txt
En el comando anterior, estamos usando el símbolo de redireccionamiento
<
para pasar el contenido del
file.txt
al comando
tr
. La redirección
>
escribe la salida del comando en
new_file.txt
.
Imprima directorios
$PATH
en una línea separada
La
$PATH
entorno
$PATH
es una lista de directorios delimitada por dos puntos que le dice al shell qué directorios buscar archivos ejecutables cuando escribe un comando.
Para imprimir cada directorio en una línea separada, debemos hacer coincidir los dos puntos (:) y reemplazarlo con la nueva línea:
echo $PATH | tr ':' '\n'
/usr/local/sbin /usr/local/bin /usr/sbin /usr/bin /sbin /bin
Conclusión
tr
es un comando para traducir o eliminar caracteres.
Aunque es muy útil,
tr
solo puede funcionar con caracteres individuales. Para la coincidencia de patrones más complejos y la manipulación de cadenas, debe usar
sed
o
awk
.
Comando Echo en Linux con ejemplos

El comando echo es uno de los comandos más básicos y de uso más frecuente en Linux. Los argumentos pasados a echo se imprimen en la salida estándar.
Comando curl en linux con ejemplos

Curl es una utilidad de línea de comandos para transferir datos desde o hacia un servidor diseñado para funcionar sin interacción del usuario. En este tutorial, le mostraremos cómo usar la herramienta de rizo a través de ejemplos prácticos y explicaciones detalladas de las opciones de rizo más comunes.
Comando de corte de Linux con ejemplos

Cut es una utilidad de línea de comandos que le permite cortar partes de líneas de archivos específicos o datos canalizados e imprimir el resultado en la salida estándar. En este tutorial, le mostraremos cómo usar el comando de corte de Linux a través de ejemplos prácticos y explicaciones detalladas de las opciones de corte más comunes.