Sed (informática)

sed
Información general
Extensiones comunes .sed
Paradigma Imperativo, no estructurado
Apareció en 1973 - 1974
Diseñado por Lee E. McMahon
Tipo de dato Únicamente strings
Implementaciones sed, GNU sed, busybox sed, psed, HHsed, super sed, sedmod, ssed.
Influido por ed
Ha influido a Perl
Sistema operativo Multiplataforma
[ editar datos en Wikidata]
Esquema general del funcionamiento de sed

sed (stream editor) es un editor de flujo, una potente herramienta de tratamiento de texto para el sistema operativo Unix que acepta como entrada un archivo, lo lee y modifica línea a línea de acuerdo a un script, mostrando el resultado por salida estándar (normalmente en pantalla, a menos que se realice una redirección). Sed permite manipular flujos de datos, como por ejemplo cortar líneas, buscar y reemplazar texto (con soporte de expresiones regulares), entre otras cosas. Posee muchas características de ed y ex.

Como lenguaje de programación es Turing completo. Provee instrucciones para realizar saltos condicionales e incondicionales a cualquier posición del script o al final del mismo. Análogas a GOTO, permiten la programación no estructurada.

Sintaxis

La sintaxis general de la orden sed es:

$ sed [-n] [-e'script'] [-f archivo] archivo1 archivo2 ...

donde:

  • -n indica que se suprima la salida estándar.
  • -e indica que se ejecute el script que viene a continuación. Si no se emplea la opción -f se puede omitir -e.
  • -f indica que las órdenes se tomarán de un archivo

Un script consiste en una o varias órdenes del editor (uno por línea o separados por ";") con la siguiente estructura:

[inicio[,fin]] función[argumentos]

donde inicio y fin hacen referencia a las líneas (número de línea) afectadas (o intervalo de líneas); función hace referencia a la orden de editor a aplicar y argumentos hace referencia a los argumentos necesarios para la ejecución de la función.

Para expresar las órdenes en varias líneas es posible utilizar comillas o apóstrofos, u opcionalmente añadir el carácter barra invertida "\" antes de pulsar Intro.

Other Languages
Alemannisch: Sed
беларуская: Sed
català: Sed
čeština: Sed
dansk: Sed
Deutsch: Sed (Unix)
English: Sed
فارسی: Sed
suomi: Sed
français: Stream Editor
עברית: Sed
magyar: Sed
italiano: Sed (Unix)
മലയാളം: സെഡ്
Nederlands: Sed (software)
português: Sed
română: Sed
русский: Sed
Türkçe: Sed (yazılım)
українська: Sed
中文: Sed