Ed

del.icio.us del.icio.us
Digg Digg
Furl Furl
Reddit Reddit
Rojo Rojo
Add to OnlyWire
Ed

GNU Ed — primul ecran al paginii sale de manual (pe un sistem de operare GNU/Linux)
Ultima versiune: 0.2 /
Lansarea anterioară: 0.1 /
SO: Unix, GNU/Linux
Tip: Editor de text
Licenţă: GPL
Disponibil în română:
Website: http://www.gnu.org

Editorul de texte ed a fost editorul standard pentru sistemul de operare Unix. La origine, ed a fost scris de către Ken Thompson şi conţine una dintre primele implementări ale expresiilor regulate. Înainte de această implementare, conceptul de expresie regulată a existat doar pe hârtie ca formalism matematic, pe care Ken Thompson l-a citit. ed a fost influenţat de un editor mai vechi de la Universitatea Berekley din California unde a studiat şi Ken Thompson, cunoscut sub numele de QED. ed a influenţat mai departe editorul ex care la rândul lui a stat la baza editorului vi. Comenzile Unix neinteractive grep şi sed au fost şi ele inspirate de folosirea comenzilor ed; influenţa acestor comenzi este vizibilă în felul în care a fost proiectat programul AWK, ce a influenţat în anumite aspecte Perl.

Faimos pentru concizia sa, ed aproape că nu are nici un feedback vizual. De exmplu, mesajul produs de ed în cazul unei erori sau când ed avertizează asupra ieşirii fără salvarea modificărilor este „?”. Nu afişază numele fişierului curent şi nici numărul liniei curente, nici chiar rezultatele unei schimbări asupra textului, decât dacă i se cere acest lucru. Această concizie era potrivită cu primele versiuni de Unix când consolele erau teleimprimatoare, modemurile erau lente, iar hard discurile şi memoriile erau foarte mici. Pe măsură ce aceste „avantaje” evoluau sau ieşau din uz, editoare mai interactive au devenit standard.

În practica uzuală ed este rareori folosit interactiv, dar îşi găseşte utilitatea în unele scripturi pentru interpretoare de comenzi (shell scripturi). Pentru uzul interactiv, ed a fost înglobat în sam, vi şi Emacs editoare din anii 1980. Practic, ed poate fi găsit pe fiecare versiune de Unix sau GNU/Linux, fiind astfel folositor pentru aceia care trebuie să lucreze pe diverse versiuni de Unix. Dacă ceva nu merge bine (depanarea sistemului), atunci ed este uneori singurul editor disponibil. Aceasta este adesea singura situaţie în care ed este folosit interactiv.

Comenzile ed au fost imitate adesea de alte editoare care lucrează linie cu linie. De exemplu, EDLIN în primele versiuni de MS-DOS avea o sintaxă pe undeva asemănătoare sau editoarele de texte din multe jocuri MUD (LPMud şi descendenţii săi, de exemplu) foloseau o sintaxă de tipul aceleia din ed. Oricum aceste editoare sunt mult mai limitate ca funcţionalitate.

Cuprins

Example

Iată un exemplu de sesiune în ed:

Sesiunea de lucru în ed pe un terminal X (sub Linux)
Sesiunea de lucru în ed pe un terminal X (sub Linux)
a
ed este editorul de texte standard pentru Unix.
Aceasta este a doua linie.
.
2i
  
.
1,$l
ed este editorul de texte standard pentru Unix.$
$
Aceasta este a doua linie.$
3s/doua/treia/
1,$l
ed este editorul de texte standard pentru Unix.$
$
Aceasta este a treia linie.$
w text
77
q

Rezultatul final este un simplu fişier text care conţine următorul text:

ed este editorul de texte standard în Unix.
  
Aceasta este a treia linie.
Verificarea sesiunii de lucru în ed pe un terminal X (sub Linux)
Verificarea sesiunii de lucru în ed pe un terminal X (sub Linux)

Începând un fişier gol (fără nume), comanda „a” va adauga text (de la append). De remarcat faptul că toate comenzile ed sunt formate dintr-o singură literă. Comanda „a” pune ed în modul inserare (insert mode), inserând caracterele care urmează până la linia care conţine doar un singur punct. Cele două linii care sunt introduse înainte de punctul singur pe linie ajung în fişierul tampon. Comanda „2i” apelează de asemenea modul inserare şi va insera textul introdus (în acest caz o singură linie goală) înainte de linia a doua. Toate comenzile pot fi prefixate de un număr de linie pentru a opera pe acea linie.

În comanda „1,$l”, l vine de la comanda de listare (list). Comanda este prefixată de un interval, două numere de linii separate de virgulă („$” înseamnă ultima linie). În schimb, ed va lista toate liniile, de la prima la ultima. Aceste linii sunt terminate cu semnul dolar, pentru a fi clar vizibil spaţiul liber de la sfârşitul liniilor (dacă ar fi cazul).

Eroarea din linia 3 este corectată prin comanda „3s/doua/treia/” prin comanda „s” de la substituţie (substitution). „3” va aplica această comandă la linia corespunzătoare, iar după comandă urmează textul care trebuie înlocuit, iar apoi textul cu care va fi înlocuit. Sunt listate apoi toate liniile cu comanda „1,$l”, astfel că acum este arătat textul corect.

„w text” scrie conţinutul din tampon în fişierul text. Acestei comenzi i se răspunde cu 77 numărul caracterelor scrise în fişier. „q” va termina sesiunea ed.

Bill Joy, vi şi ed

În războiul editoarelor, susţinătorii Emacs obişnuiau să spună „până şi Bill Joy nu mai foloseşte vi.”

Într-un interviu din 1985 Bill Joy a explicat că la Sun el folosea un program de publicat pentru desktop aflat la începuturi, numit Interleaf; când a vizitat laboratoarele din afara firmei Sun, a folosit vechiul ed. Deşi vi era bun aproape la orice, nu se putea baza pe versiunea locală pentru a lucra aşa cum era obişnuit. În schimb ed nu a fost niciodată modificat, astfel că putea conta pe el că mearge fără să se facă de râs.

Vezi şi

Legături externe

This article is from Wikipedia. All text is available under the terms of the GNU Free Documentation License.


Giant Panda

Mercedes Car
James Bond Guide
This site monitored by SitePinger.net