Trabajar con archivos de texto en el shell de Linux

Linux se convierte cada vez más en un sistema operativo popular para los profesionales de TI. Una de las razones de este movimiento son las soluciones de servidor. La estabilidad y el bajo consumo de recursos son algunas de las características importantes para esta elección. Si ya ha jugado con un servidor Microsoft, echará de menos el escritorio gráfico de un servidor Linux. Después de un inicio de sesión en un servidor Linux sólo se ve el símbolo del sistema está a la espera de sus entradas.

En este breve artículo te presento algunos programas útiles de Linux para trabajar con archivos en la línea de comandos. Esto te permite recopilar información, por ejemplo, de archivos de registro. Antes de empezar me gustaría recomendarte un sencillo y potente editor llamado joe.

Ctrl + C – Abortar la edición actual de un fichero sin guardar los cambios
Ctrl + KX – Salir de la edición actual y guardar el archivo
Ctrl + KF – Buscar texto en el archivo actual
Ctrl + V – Pegar el portapapeles en el documento (CMD + V para Mac)
Ctrl + Y – Borrar la línea actual donde está el cursor

Para instalar joe en una distribución Linux basada en Debian basta con teclear:

1. Cuando necesite encontrar contenido en un archivo de texto enorme, GREP será su mejor amigo. GREP le permite buscar patrones de texto en archivos.

gerp <pattern> file.log
    -n : number of lines that matches
    -i : case insensitive
    -v : invert matches
    -E : extended regex
    -c : count number of matches
    -l : find filenames that matches the pattern
Bash

2. Cuando necesite analizar paquetes de red, NGREP es la herramienta que necesita.

ngrep -I file.pcap
    -d : specify the network interface
    -i : case insensitive
    -x : print in alternate hexdump
    -t : print timestamp
    -I : read a pcap file
Bash

3. Cuando necesite ver los cambios entre dos versiones de un archivo, DIFF hará el trabajo.

diff version1.txt version2.txt
    -a : add
    -c : change
    -d : delete
     # : line numbers
     < : file 1
     > : file 2
Bash

4. A veces es necesario dar un orden a las entradas de un fichero. SORT le ayudará en esta tarea.

sort file.log 
     -o : write the result to a file
     -r : reverse order
     -n : numerical sort
     -k : sort by column
     -c : check if orderd
     -u : sort and remove
     -f : ignore case
     -h : human sort
Bash

5. Si tienes que reemplazar cadenas dentro de un texto enorme, como buscar y reemplazar, puedes hacerlo con SED, el editor de secuencias.

sed s/regex/replace/g
     -s : search
     -g : replace
     -d : delete
     -w : append to file
     -e : execute command
     -n : suppress output
Bash

6. El análisis sintáctico de campos con delimitadores en archivos de texto puede realizarse mediante CUT.

cut -d ":" -f 2 file.log
     -d : use the field delimiter
     -f : field numbers
     -c : specific characters position
Bash

7. La extracción de subcadenas que aparecen una sola vez en un fichero de texto se consigue con UNIQ.

uniq file.txt
     -c : count the numbers of duplicates
     -d : print duplicates
     -i : case insesitive
Bash

8.  AWK es un lenguaje de programación considerado para manipular datos.

awk {print $2} file.log
Bash

Entendiendo Linux: redescubrimiento del placer de la tecnología

Es hora de volver a tomar el control de tu hardware, porque no es necesario...

Trabajar con archivos de texto en el shell de Linux

La línea de comandos es una poderosa herramienta en Linux. En este artículo, usted aprenderá...

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *