Operadores de redirección en Linux

Foro sobre GNU Linux
Responder
Guillermo
Site Admin
Mensajes: 362
Registrado: 13 May 2023, 00:32
Ubicación: Valencia - España
Contactar:

Operadores de redirección en Linux

Mensaje por Guillermo »

En Linux, existen varios operadores de redirección que puedes usar para controlar las entradas y salidas de tus comandos. Aquí dejo algunos de los más comunes:

1. Redirección de salida estándar (`>` y `>>`): El operador `>` redirige la salida estándar a un archivo, sobrescribiendo el contenido existente del archivo. Por otro lado, `>>` redirige la salida estándar a un archivo, pero añade la salida al final del archivo, preservando el contenido existente.

Código: Seleccionar todo

echo "Hola" > archivo.txt  # Sobrescribe archivo.txt con "Hola"
echo "Mundo" >> archivo.txt  # Añade "Mundo" al final de archivo.txt
2. Redirección de entrada estándar (`<`): El operador `<` toma el contenido de un archivo y lo usa como entrada estándar para un comando.

Código: Seleccionar todo

sort < archivo.txt  # Ordena las líneas de archivo.txt
3. Redirección de errores estándar (`2>` y `2>>`): El operador `2>` redirige los errores estándar (es decir, los mensajes de error) a un archivo, sobrescribiendo el contenido existente del archivo. `2>>` hace lo mismo, pero añade los errores al final del archivo.

Código: Seleccionar todo

comando_inexistente 2> errores.txt  # Redirige los mensajes de error a errores.txt
4. Tuberías (`|`): El operador `|` toma la salida estándar de un comando y la usa como entrada estándar para otro comando. Esto es útil para encadenar varios comandos.

Código: Seleccionar todo

ls -l | grep ".txt"  # Lista los archivos .txt en el directorio actual
Guillermo
Site Admin
Mensajes: 362
Registrado: 13 May 2023, 00:32
Ubicación: Valencia - España
Contactar:

Re: Operadores de redirección en Linux

Mensaje por Guillermo »

Más ejemplos con sus explicaciones:

1. Redirección de salida estándar a un archivo:

Código: Seleccionar todo

ls -l > lista.txt  # Guarda la lista de archivos del directorio actual en lista.txt
En este caso, `ls -l` lista los archivos en el directorio actual y `> lista.txt` redirige esa lista al archivo `lista.txt`. Si `lista.txt` ya existe, su contenido será sobrescrito.

2. Añadir la salida estándar al final de un archivo:

Código: Seleccionar todo

date >> fechas.txt  # Añade la fecha y hora actual al final de fechas.txt
Aquí, `date` imprime la fecha y hora actual y `>> fechas.txt` añade esa información al final del archivo `fechas.txt`, preservando su contenido existente.

3. Uso de la tubería para conectar la salida de un comando con la entrada de otro:

Código: Seleccionar todo

ls -l | grep ".txt"  # Filtra la lista de archivos para mostrar solo los que terminan en .txt
En este ejemplo, `ls -l` lista los archivos en el directorio actual y `grep ".txt"` filtra esa lista para mostrar solo los archivos que terminan en `.txt`. La tubería `|` conecta la salida de `ls -l` con la entrada de `grep`.

4. Redirección de la entrada estándar desde un archivo:

Código: Seleccionar todo

wc -l < lista.txt  # Cuenta el número de líneas en lista.txt
Aquí, `wc -l` cuenta el número de líneas y `< lista.txt` redirige el contenido de `lista.txt` a `wc -l` como su entrada.

5. Redirección de errores estándar a un archivo:

Código: Seleccionar todo

comando_inexistente 2> errores.txt  # Redirige los mensajes de error a errores.txt
En este caso, `comando_inexistente` es un comando que no existe, por lo que genera un mensaje de error. `2> errores.txt` redirige ese mensaje de error al archivo `errores.txt`.
Responder