LPIC

Guía extraoficial de estudio

Archivos en la Categoría: – Comando sed

Comando sed

Sed

Este comando modifica directamente el contenido del fichero, enviándolo a la salida estándar.

Su sintaxis puede adoptar dos formas:

sed [opciones] -f fichero-script [fichero-entrada]
sed [opciones] texto-script [fichero-entrada]

Fichero-entrada será en nombre del fichero que se desea modificar. Texto-script o fichero-script, son el conjunto de comandos que queremos que ejecute sed.

Veamos algunos de los comandos de sed que puede emplear en sus scripts. El campo direcciones, hace referencia a los números de linea. Pueden no recibir direcciones, en cuyo caso se opera con el fichero completo. Si se recibe una dirección, se opera sobre la linea especificada. Si se reciben dos direcciones ( un rango ), se opera sobre dicho rango de lineas, ambas inclusive.

Comando Direcciones significado
= 0 o 1 Muestra el número de linea actual.
a\ texto 0 o 1
Añade el texto al fichero.

i\texto
0 o 1 Inserta el texto en el fichero.
r fichero 0 o 1 añade el texto del fichero indicado en el fichero.
c\texto rango Reemplaza el rango de lineas seleccionado con el texto proporcionado.
s/regexp/sustituto rango Reemplaza el texto que coincida con la expresión regular por el sustituto.
w fichero rango Escribe el espacio de patrones actual en el fichero especificado.
q 0 o 1 Finaliza de inmediato el script, pero imprime el espacio de patrones actual.
Q 0 o 1 Finaliza de inmediato el script.

Un ejemplo para dicho comando podría ser el siguiente:

sed ‘s/2008/2009/’ cal-2008.txt > cal-2009.txt

la idea de este ejemplo es convertir rápidamente un fichero creado para el 2008 para que se pueda utilizar en el 2009.

Sed reemplazará la primera aparición de 2008 de cada linea por 2009 y lo canaliza al fichero cal-2009.txt.

Anuncios