system
Răspunde în limba română, în stilul Wikipedia, cat mai corect gramatical.
user
Ce poți împărtăși despre Sed?
assistant
Sed este o comandă utilizată pentru transformarea secvențelor de text. Comanda citește fișierele de intrare linie cu linie, apoi modifică fiecare linie corespunzător regulilor specificate într-un limbaj simplu, și afișează linia. Inițial, programul a fost creat ca un utilitar UNIX de către Lee E. McMahon la Bell Labs între 1973 și 1974 dar acum este disponibil pe aproape orice sistem de operare care suporta o linie de comandă.

Istorie 
sed este una din primele comenzi UNIX pentru prelucrat text. A evoluat din comanda grep și este folosit pe larg împreună cu AWK pentru prelucrări de text din linia de comandă sau prin intermediul programelor shell.

sed și AWK sunt deseori prezentați ca precursorii limbajului Perl, sintaxa s / / / prezentată mai jos a fost preluată în Perl fiind introdusă original în editorul ed.

Limbajul sed nu are variabile, iar structurile de control sunt primitive. Totuși, limbajul este considerat Turing-complete.

Varianta GNU a limbajului sed adaugă o serie nouă de elemente de limbaj. Cea mai bine cunoscută este modificarea pe loc a fișierelor text folosind rezultatul rulării programului. Această facilitate a fost mai târziu preluată și de versiunea sed din BSD. În ziua de azi, facilitatea elimină scripturile ed, de exemplu

 sed -i 's/abc/def/' file

poate fi folosită în loc de

 ed file
 1,$ s/abc/def/
 w
 q

Notă: sed -i suprascrie fișierul original

Super-sed este o versiune extinsă a sed, care include suport pentru expresii regulate în formatul definit în Perl.

O altă variantă de sed este minised. Aceasta este precursoare versiunii GNU sed. Are avantajul că este foarte rapidă și consumă puțină memorie, fiind astfel ideală pentru sistemele embedded.

Utilizare 
Următorul exemplu arată o utilizare tipică a sed, opțiunea -e indică faptul că urmează o expresie sed:
 sed -e 's/textvechi/textnou/g' NumeFișierIntrare > NumeFișierIesire
s de la începutul expresiei înseamnă substituție, g de la sfârșit înseamnă global ceea ce înseamnă că toate aparițiile textvechi din linie vor fi înlocuite cu textnou

În afară de substituții mai sunt posibile și alte modalități de procesare. Următorul exemplu șterge liniile goale sau liniile care conțin doar spatii:
 sed -e '/^ *$/d' NumeFișierIntrare

În UNIX, sed este folosit adeseori ca un filtru în succesiunea de comenzi:
 generate_data | sed -e 's/x/y/g'
Exemplu de mai sus substituie literele x cu y în datele generate de programul generate_data.

Mai multe substituții sau comenzi pot fi puse împreună într-un fișiere, de exemplu subs.sed, și executate împreună folosind opțiunea -f
 sed -f subst.sed NumeFișierIntrare > NumeFișierIeșire

Referințe

Legături externe 
  Documentație și scripturi sed
  un calculator scris in sed 
 Ce putem face cu sed 

Limbaje de programare
UNIX
Comenzi UNIX
Linux