Filtros en Linux: Comando find, grep, cut, wc, sort, uniq y awk

Clasificado en Informática

Escrito el en español con un tamaño de 2,79 KB

Filtros en Linux: Comando find

Permite localizar archivos dentro de la estructura de directorios aunque tiene muchas más opciones.

Sintaxis:

find PtoBúsqueda –name “NombreArchivo”
También puede ser utilizado para buscar sólo en directorios, su sintaxis:
find PtoPartidaBúsqueda –name “NombreArchivo” –type d
Con el modificador –type f busca solo ficheros.
Otra posibilidad con el comando find es encontrar un archivo y después de localizado ejecutar un comando sobre él:
find PtoBúsqueda –name “NombreArchivo” -exec comando ‘{}’ ‘;’

Filtro grep

Busca un patrón en un archivo, sintaxis: Grep patrón archivo1
-f->utiliza un patrón (un archivo que tiene un patrón), -i->diferencia mayúsculas de minúsculas, -e->para poner más de un patrón (grep –e patrón1 –e patrón2 archivo), -v->muestra las líneas que no lo cumplen.

Filtro cut

Corta en función o bien en número de caracteres o bien de un número delimitador. Extrae 1 o varios campos para cada línea de un archivo.
Sintaxis: -c->cuenta caracteres (lista:1,3,7)(rango: 1-7), -f->campos se encuentran separados por delimitadores que especifican con la opción –d, -d->delimitador-> ‘:’, en caso de no hallarlo, utilizar TAB, Ejemplo: cut –f lista [-d carácter] [archivo1…]

Filtro wc

Este filtro se utiliza para contar el número de caracteres, líneas, palabras. Sintaxis: Wc –clw archivo1 archivo2 archivo3. -c->caracteres, -l->líneas, -w->palabras.

Filtro sort

Este filtro ordena las líneas de archivos y las envía a salida estándar. Sintaxis: Sort archivo. -f->diferencia mayúsculas de minúsculas, -n->caracteres numéricos como número, los valores por defecto se consideran caracteres dígitos, -t->carácter, -k->columna.

Filtro uniq

Elimina repetidos si la entrada está ordenada. Sintaxis: Uniq[OPCIÓN]…[ENTRADA[SALIDA]].

Awk

Comando de procesamiento de patrones, comprueba cada línea de un archivo, buscando las que coincidan con los patrones dados en la línea de comando. Sintaxis: awk '{patrón + acción}' {nombresdearchivo}.

Operadores:

^->Principio de línea, $->fin de línea, []->Clase de caracteres, | OR, *->Cero o más apariciones, +->Una o más apariciones, ?->Cero o una aparición, .->Comodín (un carácter), ()->Agrupación.

El patrón que más utilizaremos será PRINT al cual incorporándole $numcolumna nos permitirá extraer una o más columnas de un determinado fichero.

Ejemplos:
awk '{print $2}' caidas.txt (nos mostrará la segunda columna del fichero caidas). awk FS="." '{print $1 $3}' /etc/passwd (mostrar el 1 y 3 campo del fichero /etc/passwd).

Entradas relacionadas: