9.1.- Sintaxis de llamada a comandos filtro

Junto con la visualización de archivos, veamos a continuación otros ejemplos de uso del comando cat.

Si el comando cat no recibe ningún archivo como argumento, lee la entrada estándar (teclado). En este caso, los datos leídos del teclado se dirigen al archivo muestra1, lo que tiene como efecto la creación del archivo si éste no existe o la sobre escritura del mismo si el archivo existe.

Para el siguiente ejemplo vamos a crear el archivo muestra2:

Crearemos el archivo muestra3, a partir de la concatenación (unión) de muestra1 y muestra2:

Veamos otro ejemplo, creamos el archivo muestra4 y escribimos dos palabras separadas con una tabulación.

Con la opción -t permite visualizar las tabulaciones. Estas se visualizan con el carácter ^I:

La opción -e visualiza los finales de línea, visualizándolo con el carácter $.

La opción -v permite mostrar de forma visible los caracteres no imprimibles (ver Configuración del entorno de trabajo – Histórico de comandos, que hace referencia a la reutilización de un comando en ksh).

El comando od permite visualizar el valor de cada byte de un archivo de texto o binario.  La opción -c permite solicitar una interpretación byte a byte. Así es posible visualizar de manera exacta el contenido del archivo, detectar la colocación de espacios, tabulaciones y saltos de línea (CR LF o LF), etc.

El comando cat no nos permite saber si el archivo contiene espacios o tabulaciones.

Con od, las tabulaciones se representan con “\t“, los espacios por un espacio, el carácter LF se representa por “\n“:

La columna de la izquierda representa la posición del primer carácter de la línea en el archivo, expresada en octal. Esta información no forma parte del contenido del archivo.

El comando grep busca una cadena de caracteres en uno o varios archivos de texto y muestra por pantalla las líneas que contienen dicha cadena. La cadena buscada se representa mediante una expresión regular básica (por defecto) o extendida (opción -E). Este párrafo presenta las principales opciones del comando grep. Las expresiones regulares y su uso con grep podemos repasarlo en la sección Expresiones Regulares visto anteriormente.

Veamos nuestro archivo “agenda2.txt” que nos va a servir como ejemplos.

Mostrar las líneas que contengan 28023 y 08020:

Hacer una búsqueda regular extendida “-E“que no sea sensible a las mayúsculas/minúsculas “-i“:

Mostrar líneas que no terminen con la cifra “8“:

Buscar líneas que comiencen por “R” o acaben con “8“:

Busca líneas que terminen con “8“, y la muestra precedidas de un número:

En el modo silencioso, solamente el estado de retorno indica si la búsqueda tiene resultados; en este ejemplo observamos que el estado de retorno da 0 en el primer ejemplo, significa que se obtiene un resultado positivo; el estado 1 es todo lo contrario:

Mostrar la cantidad de líneas que contiene el criterio de búsqueda:

Muestra las líneas que contengan la palabra “calle“:

Muestra las líneas que contengan al menos tres caracteres:

No interpreta el criterio de búsqueda como una expresión regular:

Leer los criterios de búsqueda desde un archivo:

Por último, hacer una búsqueda usando grep detrás de una tubería para buscar un proceso httpd:

El comando tail permite mostrar las “n” últimas líneas de un flujo de datos. Por ejemplo, este comando es muy práctico para visualizar las últimas líneas escritas en un archivo de log.

Muestra las dos últimas líneas del archivo “agenda2.txt“:

El comando head permite visualizar las “n” primeras líneas de un flujo de datos. Sin opción, el comando muestra las diez primeras líneas.

Mostrar la primera línea devuelta con el comando od, donde los primeros bytes del archivo comandos.pdf indican que se trata de un formato PDF (información usada por el comando file, que indica el tipo de contenido) .

El comando tee recupera un flujo de datos de su entrada estándar, lo envía a un archivo pasado como un argumento y a su salida estándar. Esto permite tener a la vez el resultado en pantalla y en un archivo.

Ejecuta el comando ps y a su vez volcamos su salida al fichero “ps.txt“:

Vemos  que el contenido de la salida se ha almacenado en el fichero ps.txt y a su vez lo  visualizamos por pantalla, si no usáramos el comando tee y volcáramos la salida con una redirección a un fichero “>“, la acción no se reflejaría por la pantalla.

El comando nl permite mostrar un archivo de texto comenzando con un número de línea, por defecto las líneas vacías no se enumeran.

Las líneas en blanco no se enumeran por defecto:

Enumerar todas las líneas.

El comando pr muestra un archivo de texto formateado. Por defecto cada página ocupa 66 líneas, de las cuales 5 pertenecen a la cabecera y 5 al pie de página.

Formateo simple del archivo listado.txt:

Formateo con 15 líneas por página, y dos columnas añadiéndole un título:

  • La clave es ir ensayando y probando nuestros ejemplos con el fin de ir aprendiendo a utilizar estos comandos.

 

Anuncios