BASH – Script convierte cada palabra de una frase en una variable.- (Array)

Publicado en Unix - Linux | Deja un comentario

UNIX – Script Shell que cuenta los archivos y directorios que hay en el directorio pasado como argumento.

Publicado en Unix - Linux | Deja un comentario

BASH – Script RETURN no númerico en funciones bash.-

Por defecto en bash sólo se pueden retornar enteros. ¿Qué hay que hacer entonces para que retorne un valor no entero? El truco está en hacer un echo del valor y asegurarnos en la llamada de la función que se asigna a una variable. Es decir, nuestra función sería:

Publicado en Unix - Linux | Deja un comentario

UNIX – Script AWK para contar palabras de un texto.-

Este programa imprime la lista de todas las palabras diferentes usadas en un texto, junto con la frecuencia de aparición de cada una. Para simplificar el programa se asume que no hay signos de puntuación, y las palabras están separadas por espacio en blanco o saltos de línea. Esto significa que cada palabra es un campo de la línea de entrada.

Código del programa (vocabulario.awk):

Ejemplo de texto de entrada (texto.txt):

Orden de ejecución :

Resultados:

Observaciones:

1.- La primera cláusula del programa tiene el patrón omitido. Se aplica a todas las líneas del texto de entrada.
2.- Las palabras en mayúsculas y en minúsculas se tratan como diferentes. Este es el comportamiento por defecto de AWK.
3.- Los resultados no aparecen en orden alfabético (ni en ningún otro orden determinado). Las tablas suelen implementarse internamente como tablas «hash», y sus elementos se recorren en el orden que haya decidido quien construyó el intérprete.

Publicado en Unix - Linux | Deja un comentario

UNIX – Uso basico de SED.-

SED (Stream EDitor) es un editor de flujos y ficheros de forma no interactiva. Permite modificar el contenido de las diferentes líneas de un fichero en base a una serie de comandos o un fichero de comandos (-f fichero_comandos).

Sed recibe por stdin (o vía fichero) una serie de líneas para manipular, y aplica a cada una de ellas los comandos que le especifiquemos a todas ellas, a un rango de las mismas, o a las que cumplan alguna condición.

Por ejemplo:

Formato de uso
El formato básico de uso de sed es:

Donde:

[direccion] es opcional, siendo un número de línea (N), rango de números de línea (N,M) o búsqueda de regexp (/cadena/) indicando el ámbito de actuación de las instrucciones. Si no se especifica [direccion], se actúa sobre todas las líneas del flujo.

Instruccion puede ser:
i = Insertar línea antes de la línea actual.
a = Insertar línea después de la línea actual.
c = Cambiar línea actual.
d = Borrar línea actual.
p = Imprimir línea actual en stdout.
s = Sustituir cadena en línea actual.
r fichero = Añadir contenido de «fichero» a la línea actual.
w fichero = Escribir salida a un fichero.
! = Aplicar instrucción a las líneas no seleccionadas por la condición.
q = Finalizar procesamiento del fichero.

-n: No mostrar por stdout las líneas que están siendo procesadas.

-s: Tratar todos los ficheros entrantes como flujos separados.

EJEMPLOS DE SUSTITUCION :

EJEMPLOS DE INSERCION :

EJEMPLOS DE SELECCION/VISUALIZACION :

EJEMPLOS DE BORRADO :

USO DE SALIDA SELECTIVA :

Referencias

http://www.linuxhowtos.org/System/sedoneliner.htm?ref=news.rdf

Publicado en Unix - Linux | Deja un comentario