vyd | |
---|---|
Typ | UNIXový nástroj [d] a editor řádků [d] |
Autor | Bellovy laboratoře |
Vývojář | Ken Thompson |
Rozhraní | TTY |
Operační systém | UNIX |
První vydání | 1971 |
Hardwarová platforma | Unix |
ed (vyslovováno /iːdiː/ ) [1] je první standardní textový editor operačního systému UNIX .
Má příkazově orientované rozhraní , protože byl vytvořen v době, kdy ještě neexistovaly monitory a dálnopis byl standardní vstupní/výstupní nástroj .
Editor napsal Ken Thompson v assembleru PDP-11 /20 v roce 1971. Mnoho funkcí ed pochází z QED , textového editoru vytvořeného na Thompsonově alma mater , UC Berkeley [2] . Ken byl velmi dobře obeznámen s QED a již dříve jej přenesl na CTSS a Multics . Jeho verze QED viděla první implementaci regulárních výrazů . Regulární výrazy se také objevily v ed, i když byly implementovány v menší míře než v QED.
Výkonným rozšířením edových nápadů je textový editor sam, který byl napsán pro Plan 9 . Rozšířená verze editoru, známá jako ex , se později stala základem pro vi .
ed (nebo jeho ekvivalent) je k dispozici na téměř všech operačních systémech podobných UNIX (a měl by být v systému vyhovujícím specifikaci Single UNIX ). Známý pro svou extrémní stručnost, prakticky nedává žádnou zpětnou vazbu [3] . Například chybová zpráva i výzva k potvrzení, že si uživatel přeje ukončit práci bez uložení, jsou obě "?". Nezobrazuje výsledek změn textu bez požadavku. Starší verze (cca 1981) ani nepožadují potvrzení pro ukončení bez uložení [3] . Tato stručnost byla užitečná na starších verzích UNIXu, kdy dálnopis byl konzolí , modemy byly pomalé a paměť byla drahocenná. Jak se počítačová technologie zdokonalovala, tato omezení se zmírnila a vizuální textové editory se staly normou.
Po příchodu obrazově orientovaných editorů se ed začal používat především pro automatické zpracování v prostředí UNIX , jako je aplikace záplat . V tomto smyslu je předkem rodiny editorů streamů , jako je sed .
Příkazový režim ed byl často napodobován jinými textovými editory. Například Edlin v raných verzích MS-DOS měl poněkud podobnou syntaxi. Textové editory v mnoha hrách MUD (např . LPMud a jeho potomci) mají také syntaxi podobnou ed.
Příklad relace v ed. Pro přehlednost je textový výstup editoru zvýrazněn .
A ed je standardní unixový textový editor. Toto je linka číslo dvě. . 2i . %l ed je standardní unixový textový editor. $ $ Toto je řádek číslo dvě. $ 3s/dvě/tři/ ,l ed je standardní unixový textový editor. $ $ Toto je řádek číslo tři. $ wtext 65 qV důsledku toho bude soubor obsahovat následující text:
ed je standardní unixový textový editor. Toto je řádek číslo tři.Práce začíná prázdným souborem, příkaz apřidá text (všechny příkazy ed se skládají z jednoho písmene). Příkaz přepne editor do režimu připojení na aktuální řádek . Vstup končí tečkou na samostatném řádku. Tyto dva zadané řádky před bodem jsou uloženy ve vyrovnávací paměti souboru. Příkaz uvede editor do režimu vkládání na řádek číslo 2 a vloží zadaný text (v tomto případě jen mezeru) před předchozí druhý řádek, který se nyní stane třetím. Všechny příkazy mohou mít předponu s řetězcem, který se má změnit. 2i
Obecná syntaxe všech příkazů: [[адрес начальной строки,]адрес конечной строки]команда[параметры]. Příklad přesunutí ( anglicky move ) bloku textu z posledních čtyř řádků souboru a jeho přidání za řádek číslo 43: $-4,$m43. Symbol $představuje poslední řádek.
V řetězci %lmalé písmeno lznamená výstupní příkaz. Předpona tohoto příkazu je výstupní rozsah, v tomto případě %, což je zkratka pro 1,$. To znamená, že musíte vypsat všechny řádky od prvního do posledního.
Po vložení prázdného řádku se zobrazí text "Toto je řádek číslo dva." klesá do třetího řádku. Chybu lze opravit příkazem nahradit 3s/two/three/. Výstup celého textu lze také vytvořit příkazem ,l(čárka je zde synonymem pro %).
w textuloží text do souboru, v odpovědi ed vypíše počet zapsaných znaků ( 65). qopustí editor.
Textové editory ( seznam ) | |
---|---|
Unix / Linux | |
DOS | |
Okna | |
Víceplatformní | |
SDK | |
Funkce |
Ken Thompson | |
---|---|
Operační systémy | |
Programovací jazyky | |
Software |
|
jiný |