14 feb 2017

Redireccionamientos

Una redirección es una forma de trasladar información desde un fichero a otro en Linux. Una posible aplicación de una redirección podría ser guardar el contenido de un fichero, como sources.list (la lista de nuestros repositorios), a un documento .txt. Yo lo haré con algo más sencillo de visualizar.

Desde mi carpeta personal hago un ls para listar todo el contenido de la misma.

Supongamos que quiero guardar el contenido que me muestra este comando por alguna razón, como por ejemplo que vayamos a realizar modificaciones. Para ello podemos utilizar un redireccionamiento.

Guardaré todo el contenido del comando ls de mi carpeta personal en un archivo llamado redireccionamiento.txt
|| ls > redireccionamiento.txt

Mostraré el contenido del txt que he creado
|| nano redireccionamiento.txt

También quedará en el listado nuestro nuevo archivo de texto.

Ahora bien, si quisiéramos guardar una nueva redirección en el fichero para tener un historial con los cambios, no utilizaremos el comando redireccionador anterior porque sobreescribiríamos el archivo txt, si no que utilizaríamos el siguiente:
|| ls -la >> redireccionamiento.txt

El contenido se añadirá al final del archivo 

Ahora supongamos que lo que queremos es mostrar contenido del fichero sin abrirlo. Podemos mostrar varias líneas del principio...
|| head redireccionamiento.txt

... o varias líneas del final
|| tail redireccionamiento.txt

Tanto como para el comando head como para el comando tail, podemos elegir el número de líneas que queremos mostrar. Si por ejemplo, sólo queremos mostrar las 3 primeras líneas escribiremos lo siguiente:
|| head -3 redireccionamiento.txt

Por otra parte, imaginemos que sólo queremos mostrar la tercera línea por abajo. Esto también se haría del mismo modo para head que para tail, simplemente es cuestión de jugar con los parámetros:
|| tail -3 redireccionamiento.txt | head -1
De las 3 últimas líneas, la primera línea
Como veis el redireccionamiento y sus parámetros dan mucho juego, es cuestión de cada cuál adaptarlo a sus necesidades o a su imaginación. No obstante, el redireccionamiento es una herramienta que nos será de gran ayuda.´

Por último, voy a rizar un poco el rizo. Imaginemos que queremos guardar varias líneas de un archivo de texto en otro archivo. Podríamos utilizar la siguiente línea:
|| head -4 redireccionamiento.txt | tail -2 > listas.txt

Si lo abrimos con nano observaremos que hemos copiado las líneas 3 y 4 del fichero redireccionamiento.txt a otro nuevo, lineas.txt

No hay comentarios:

Publicar un comentario