Sed es un editor de emisiones (stream editor) utilizado para el procesamiento de texto en archivos. Utiliza un lenguaje de programación para realizar transformaciones en una emisión de datos leyendo línea por línea de estos. Fue desarrollado entre 1973 y 1974 por Lee E. McMahon de Bell Labs. Está incluido en las instalaciones básicas de prácticamente todas las distribuciones de GNU/Linux.
Algunas referencias:
http://sed.sourceforge.net/sedfaq.html
http://www.gentoo.org/doc/es/articles/l-sed1.xml
Ejemplos de usos de Sed:
#!/bin/bash
for M in "60" "80"
do
#Borrar hasta antes de la ocurrencia "Tiempo"
sed '/^Tiempo/,$!d' salida_$M.out
#Borrar el bloque de lineas entre ocurrencias
sed '/^Tried/,/^Total/d' salida_$M.out
#Borrar desde la 5ta linea hasta la ocurrencia "Total"
sed -i '5,/^Total/d' salida_$M.out
#Uso de -i para modificar archivo original y respaldarlo
sed -i".dat" -e '/^Tried/,/^Total/d' salida_$M.out
#borrar lineas en blanco
sed '/^$/d' salida_$M.out
#Hacer que solamente exista una línea en blanco después de cada frase
sed '/^$/d;G' salida_$M.out
#Añadir una línea en blanco después de cada frase
sed G salida_$M.out
#Insertar una línea en blanco antes de cada línea que cumpla con una ocurrencia
sed -i '/fallo/{x;p;x}' salida_$M.out
sed -i '/se/{x;p;x}' salida_$M.out
#Insertar una línea en blanco antes y después de cada línea que cumpla con una ocurrencia
sed '/Inicio/G' salida_$M.out
# leer y remplazar
echo "texto a rempl"; read remplazar
echo "por "; read por
sed "s_"$remplazar"_"$por"_g" < salida_$M.out
#Cambiar minsuculas por maysculas la primera letra de una linea
sed -i 's/^./\u&/' salida_$M.out
#Insertar linea de texto antes(i), despues(a) y en la linea(c)
sed -i "10a\seg" salida_$M.out
done
No hay comentarios:
Publicar un comentario