Provided by: manpages-pl_0.6-2_all bug

NAZWA

       ed, red - edytor tekstu

SKŁADNIA

       ed [-] [-Gs] [-p łańcuch] [plik]

       red [-] [-Gs] [-p łańcuch] [plik]

OPIS

        Uwaga! To tłumaczenie może być nieaktualne!

       ed jest zorientowanym liniowo edytorem tekstu.  Jest o używany do tworzenia, wyświetlania,
       modyfikowania i innych działań na plikach tekstowych.  red to ed zastrzeżony (restricted):
       może edytować tylko pliki z bieżącego katalogu i nie może wykonywać komend powłoki.

       Po  wywołaniu z argumentem pliku, jego kopia jest odczytywana do bufora edytora.  Wszelkie
       zmiany robione są na tej kopii, nie na pliku jako takim.  Podczas kończenia  pracy  z  ed,
       wszelkie zmiany, których nie zachowano komendą `w' są tracone.

       Edycja  jest  dokonywana w dwóch różnych trybach: komend i wprowadzania.  Po uruchomieniu,
       ed jest w trybie komend.  W trybie tym ze standardowego  wejścia  czytane  są  komendy,  a
       następnie  są  one  wykonywane  na  zawartości  bufora  edytora.  Przykładowa komenda może
       wyglądać tak:

              ,s/old/new/g

       co zamienia wszystkie pojawienia się napisu old na new.

       Po podaniu komendy wprowadzania, takiej jak `a' (append--dopisz), `i' (insert--wstaw)  lub
       `c'  (change-zmień),  ed  wchodzi  w  tryb  wprowadzania.  Jest  to  podstawowe  narzędzie
       wprowadzania tekstu do pliku. W trybie tym nie  ma  dostępnych  żadnych  komend.   Zamiast
       tego,  standardowe  wejście jest bezpośrednio zapisywane do bufora edytora. Linie składają
       się z tekstu, aż do (łącznie)  znaku  nowej  linii.   Tryb  wprowadzania  jest  przerywany
       wprowadzeniem pojedynczej kropki w linii.

       Wszystkie  komendy  ed  operują  na  całych liniach, lub zakresach linii; np.  komenda `d'
       kasuje (delete) linie; komenda `m' przenosi linie, itp.  Można też modyfikować tylko część
       linii, korzystając z narzędzi podmiany, podanych np. w powyższym przykładzie. Jednak nawet
       tu, komenda `s' tyczy się do całych linii naraz.

       W ogólności, komendy ed składają się z zera lub więcej adresów linii, za którymi następuje
       pojedynczy znak komendy i często dodatkowe parametry; komendy mają więc strukturę:

              [adres [,adres]]komenda[parametry]

       Adresy  wskazują  linię,  lub  zakres  linii,  których dotyczy komenda. Jeśli podano mniej
       adresów niż potrzeba komendzie, używane są adresy domyślne.

   OPCJE
       -G      Wymusza kompatybilność wsteczną. Dotyczy komend `G', `V', `f', `l', `m', `t',  and
               `!!'.

       -s      Powstrzymuje  diagnostykę. Powinno być używane jeśli standardowe wejście ed'a jest
               ze skryptu.

       -p łańcuch
               Podaje znak zachęty komend. Może to być włączane, lub wyłączane komendą `P'.

       plik    Określa nazwę odczytywanego pliku. Jeśli plik jest poprzedzony wykrzyknikiem  (!),
               to  jest  interpretowany  jak  komenda powłoki. W tym wypadku to, co jest czytane,
               jest standardowym wyjściem pliku  wywołanego  przez  sh(1).   Aby  odczytać  plik,
               którego nazwa rozpoczyna się od wykrzyknika, poprzedź go odwrotnym ukośnikiem (\).
               Domyślna nazwa pliku jest ustawiana na  file  tylko  jeśli  nie  jest  poprzedzona
               wykrzyknikiem.

   ADRESOWANIE LINIOWE
       Adres  reprezentuje  numer  linii  w  buforze.   ed  obsługuje  adres  bieżący, który jest
       zazwyczaj przekazywany komendom jako  domyślny  (w  wypadku  niepodania  tego  argumentu).
       Podczas pierwszego odczytu pliku, adres bieżący jest ustawiany na ostatnią linię. Ogólnie,
       adres bieżący jest ustawiany na ostatnią linię, dotkniętą przez komendę.

       Adres linii jest konstruowany z jednej z baz z poniższej listy, za którą opcjonalnie  może
       następować  offset  numeryczny.  Offsety mogą zawierać dowolne kombinacje cyfr, operatorów
       (np.  +, - i ^) i białych spacji.  Adresy są czytane od lewej do prawej, a ich wartości są
       obliczane względem adresu bieżącego.

       Wyjątkiem  reguły,  że adresy reprezentują numery jest adres address 0 (zero).  Oznacza to
       "przed pierwszą linią," i jest legalne tam gdzie ma sens.

       Zakres adresów to dwa adresy, oddzielone przecinkiem lub  średnikiem.  Wartość  pierwszego
       adresu  w  zakresie  nie  może być większa od drugiego. Jeśli w zakresie podany jest tylko
       jeden adres, to drugi adres jest ustawiany na podany.  Jeśli podano n-krotną parę adresów,
       gdzie n > 2, to zakres jest określany przez ostatnie dwa adresy zestawu.  Jeśli oczekiwany
       jest tylko jeden adres, to używany jest ostatni.

       Każdy adres w zakresie przecinkowym  jest  interpretowany  względem  adresu  bieżącego.  W
       zakresie  średnikowym, pierwszy adres jest używany do ustawienia adresu bieżącego, a drugi
       względem pierwszego.

       Rozpoznawane są następujące symbole adresowe.

       .       Adres bieżącej linii w buforze.

       $       Adres ostatniej linii w buforze.

       n       nta linia w buforze, gdzie n jest liczbą w zakresie [0,$].

       -

       ^       Poprzednia linia.  Jest to równoważne -1 i może być powtarzane z rosnącym efektem.

       -n

       ^n      nta linia poprzednia, gdzie n jest liczbą nieujemną.

       +       Następna linia.  Jest to równoważne +1 i może być powtarzane z rosnącym efektem.

       +n

       biała spacja n
               nta następna linia, gdzie  n  jest  liczbą  nieujemną.   Biała  spacja,  za  którą
               następuje liczba n jest interpretowana jako +n.

       ,

       %       Zakres od pierwszej do ostatniej linii. Jest to równoważne 1,$.

       ;       Zakres od bieżącej do ostatniej linii. Jest to równoważne .,$.

       /re/    Następna  linia,  zawierająca  wyrażenie  regularne  re.  Poszukiwanie gdy jest to
               konieczne, zakręca na początek bufora i leci  dalej  aż  do  linii  bieżącej.   //
               powtarza ostatnie szukanie.

       ?re?    Poprzednia  linia  zawierająca  wyrażenie  regularne re.  Poszukiwanie gdy jest to
               konieczne, zakręca na koniec bufora i leci aż  do  linii  bieżącej.   ??  powtarza
               ostatnie szukanie.

       ´lc     Linia poprzednio zaznaczona przez komendę `k' (marK), gdzie lc jest małą literą.

   WYRAŻENIA REGULARNE
       Wyrażenia regularne są wzorcami, używanymi w wybieraniu tekstu.  Na przykład, komenda ed

              g/napis/

       drukuje  wszystkie  linie,  zawierające  napis.   Wyrażenia regularne są używane też przez
       komendę `s', gdzie wybierają stary tekst, zastępowany nowym.

       W dodatku do podawania napisów, wyrażenia regularne  mogą  reprezentować  klasy  łańcuchów
       znakowych.  Łańcuchy  tak reprezentowane będą odpowiadać wyrażeniom regularnym. Jeśli jest
       możliwe, by wyrażenie regularne dopasowało  kilka  napisów  w  linii,  to  wybierane  jest
       dopasowanie najbardziej z lewej.

       Do konstruowania wyrażeń regularnych używane są następujące symbole:

       c       Dowolny  znak  c  nie  wymieniony  niżej,  łącznie z `{', '}', `(', `)', `<' i `>'
               oznacza samego siebie.

       \c      Znak c
                zacytowany lewym ukośnikiem, inny niż `{', '}', `(', `)',  `<',  `>',  `b',  'B',
               `w', `W', `+' i `?' oznacza właśnie ten znak.

       .       Oznacza pojedynczy znak. (dowolny)

       [klasa-znaków]
               Oznacza  pojedynczy znak z klasy znaków.  Aby do klasy znaków włączyć `]', musi to
               być pierwszy znak.  Zakres znaków można przekazać, rozdzielając jego końce znakiem
               `-', np.  `a-z', który oznacza wszystkie małe litery. Do podawania zestawów znaków
               w klasie znaków można używać następujących literałów:

                 [:alnum:]  [:cntrl:]  [:lower:]  [:space:]
                 [:alpha:]  [:digit:]  [:print:]  [:upper:]
                 [:blank:]  [:graph:]  [:punct:]  [:xdigit:]

               Gdy znak  `-'  pojawia  się  jako  pierwszy  lub  ostatni  znak  klasy-znaków,  to
               dopasowuje sam siebie.  Wszystkie inne znaki klasy-znaków odpowiadają same sobie.

               Wzorce w klasie-znaków postaci

                 [.col-elm.] lub   [=col-elm=]

               gdzie  col-elm jest elementem porównawczym są interpretowane według locale(5) (nie
               jest to obecnie obsługiwane).  Zobacz regex(3) dla objaśnień tych konstrukcji.

       [^klasa-znaków]
               Odpowiada dowolnemu pojedynczemu znakowi, innemu niż nowa linia, który nie jest  w
               klasie-znaków.  klasa-znaków jest definiowana podobnie jak wyżej.

       ^       Jeśli  `^'  jest  pierwszym  znakiem  wyrażenia regularnego, to zaczepia wyrażenie
               regularne na początku linii.  W przeciwnym wypadku oznacza `^'.

       $       Jeśli `$' jest ostatnim  znakiem  wyrażenia  regularnego,  to  doczepia  wyrażenie
               regularne do końca linii. W przeciwnym wypadku oznacza `$'.

       \(re\)  Definiuje  podwyrażenie re.  Podwyrażenia mogą być zagnieżdżane.  Kolejne wsteczne
               odniesienia postaci `\n', gdzie n jest cyfrą z zakresu  [1,9],  rozwijają  się  do
               tekstu  dopasowanego  przez  nte  podwyrażenie.   Na przykład, wyrażenie regularne
               `\(a.c\)\1' odpowiada napisowi  `abcabc',  lecz  nie  `abcadc'.   Podwyrażenia  są
               porządkowane względem ich lewego ogranicznika.

       *       Odpowiada dopasowaniu poprzedzającego znaku lub podwyrażenia zero lub więcej razy.
               jeśli '*' jest pierwszym  znakiem  wyrażenia  regularnego,  lub  podwyrażenia,  to
               oznacza  '*'.  Operator  `*'  daje  czasem  nieoczekiwane  rezultaty.  Na przykład
               wyrażenie `b*' dopasowuje początek napisu `abbb', według podnapisu `bbb'.

       \{n,m\}
       \{n,\}
       \{n\}   Odpowiada poprzedzającemu jednoznakowemu wyrażeniu regularnemu, lub  podwyrażeniu,
               dopasowanemu  przynajmniej  n i najwięcej m razy.  Jeśli m jest pominięte, to jest
               tylko dolne ograniczenie.  Jeśli pominięty jest też przecinek, dopasowanie  wymaga
               dokładnie n powtórzeń. Jeśli któraś z tych postaci pojawi się na początku, to jest
               interpretowana literalnie. Np.  `\{2\}' odpowiada `{2}', itd.

       \<
       \>      Zaczepia wyrażenie znakowe, lub podwyrażenie  do  początku  (\<)  lub  końca  (\>)
               słowa,  czyli  w  ASCII  maksymalnego  łańcucha znaków alfanumerycznych, łącznie z
               podkreśleniem (_).

       Następujące rozszerzone operatory są poprzedzane lewym  ukośnikiem,  aby  odróżnić  je  od
       tradycyjnej składni ed.

       \`
       \'      Bezwarunkowo dopasowuje początek (\`) lub koniec (\') linii.

       \?      Opcjonalnie  odpowiada pojedynczemu znakowi, lub podwyrażeniu, które go poprzedza.
               Np. wyrażenie `a[bd]\?c' odpowiada `abc', `adc' i `ac'.  Jeśli \? pojawia  się  na
               początku linii, to jest traktowane literalnie jako `?'.

       \+      Odpowiada   pojedynczemu   znakowi,   lub   podwyrażeniu,  poprzedzającemu  go,  a
               powtarzającemu się jeden, lub więcej razy. Tak więc wyrażenie regularne `a+'  jest
               skrótem  `aa*'.   Jeśli  \+ pojawi się na początku linii, to odpowiada literalnemu
               `+'.

       \b      Odpowiada początkowi lub  końcowi  (łańcuch  zerowy)  słowa.  Tak  więc  wyrażenie
               regularne   `\bhello\b'   jest   równoważne   `\<hello\>'.   Jednak,  `\b\b'  jest
               prawidłowym wyrażeniem, podczas gdy `\<\>' nim nie jest.

       \B      Odpowiada (łańcuchowi zerowemu) w słowie.

       \w      Odpowiada dowolnemu znakowi w słowie.

       \W      Odpowiada dowolnemu znakowi nie będącemu w słowie.

   KOMENDY
       Wszystkie komendy ed to pojedyncze znaki, choć niektóre wymagają  dodatkowych  parametrów.
       Jeśli  parametry  komendy  rozciągają  się  na  kilka linii, to każda linia poza ostatnią,
       powinna być zakończona lewym ukośnikiem (\).

       Ogólnie, na linię  dozwolona  jest  najwięcej  jedna  komenda.   Jednak  większość  komend
       przyjmuje  przyrostek  drukowania,  który  może  być  dowolnym  z  `p' (drukuj-print), `l'
       (listuj-list) , lub `n' (wyliczaj-eNumerate),  który  drukuje  ostatnią  linię,  dotkniętą
       przez komendę.

       Przerwanie  (zwykle  ^C)  ma  znaczenie przerywania bieżącej komendy i powracania do trybu
       komend.

       ed rozpoznaje następujące komendy. Komendy pokazane są wraz  z  domyślnymi  adresami,  lub
       zakresami, dostarczanymi gdy nie zostały podane (w nawiasach).

       (.)a    Dokleja  do adresowanej linii bufora linię, która może być adresem zerowym.  Tekst
               jest wstawiany w trybie wprowadzania. Adres bieżący  jest  ustawiany  na  ostatnią
               wprowadzoną linię.

       (.,.)c  Zmienia  linie  w  buforze.  Adresowane  linie  są  kasowane, a w ich miejsce jest
               wklejany tekst. Tekst wprowadzany jest w trybie wprowadzania. Bieżący  adres  jest
               ustawiany na ostatnią wstawioną linię.

       (.,.)d  Kasuje  adresowane  linie  z  bufora.  Jeśli za skasowanym zakresem jest linia, to
               bieżący adres jest na nią ustawiany. W przeciwnym wypadku, jest ustawiany na linię
               przed skasowanym zakresem.

       e plik  Edytuje plik, i ustawia domyślną nazwę pliku.  Jeśli plik nie jest podany, używana
               jest domyślna nazwa pliku.  Wszelkie  linie  bufora  są  kasowane  przed  odczytem
               nowego pliku.  Bieżący adres jest ustawiany na ostatnią odczytaną linię.

       e !komenda
               Edytuje  standardowe  wyjście `!komendy', (zobacz !komenda niżej).  Domyślna nazwa
               pliku nie jest zmieniana.  Wszelkie linie bufora  są  kasowane  przed  odczytaniem
               wyjścia komendy.  Bieżący adres jest ustawiany na ostatnią odczytaną linię.

       E plik  Edytuje  bezwarunkowo  plik.  Jest to podobne do komendy e lecz niezapisane zmiany
               są niszczone bez ostrzeżenia. Bieżący adres jest ustawiany na  ostatnią  odczytaną
               linię.

       f plik  Ustawia  domyślną nazwę pliku na plik.  Jeśli plik nie jest podany, drukowana jest
               niecytowana domyślna nazwa pliku.

       (1,$)g/re/lista-komend
               Aplikuje list-komend do każdej linii,  odpowiadającej  wyrażeniu  regularnemu  re.
               Bieżący  adres  jest ustawiany na obecnie dopasowaną linię przed wykonaniem listy-
               komend.  Na końcu komendy `g' adres bieżący  jest  ustawiany  na  ostatnią  linię,
               dotkniętą przez listę-komend.

               Każda  komenda  w  liście  komend musi być w oddzielnej liście, a każda linia poza
               ostatnią musi być zakończona lewym ukośnikiem (\).  Dozwolone są wszystkie komendy
               poza  `g',  `G', `v', i `V'.  Nowa linia w liście-komend jest równoważna komendzie
               `p'.

       (1,$)G/re/
               Interaktywnie edytuje linie odpowiadające wyrażeniu regularnemu  re.   Dla  każdej
               linii,  linia  jest  drukowana  i  ustawiany jest adres bieżący, a użytkownik jest
               pytany o wstawienie listy-komend.  Na końcu działania komendy `G',  adres  bieżący
               jest ustawiany na ostatnią linię, dotkniętą przez listę-komend.

               Format listy-komend jest taki sam jak w `g'.  Samotna nowa linia działa jak zerowa
               lista komend.  Pojedynczy `&' powtarza ostatnią niezerową listę komend.

       H       Włącza drukowanie wyjaśnień błędów.  Domyślnie nie  są  one  drukowane.  Zalecanym
               jest, by skrypty rozpoczynały się tą komendą. Umożliwia to debuggowanie.

       h       Drukuje objaśnienie ostatniego błędu.

       (.)i    Wstawia  tekst  do  bufora  przed  linię  bieżącą.   Tekst jest wstawiany w trybie
               wstawiania. Bieżący adres jest ustawiany na ostatnią wstawioną linię.

       (.,.+1)j
               Łączy adresowane linie. Adresowane linie są kasowane z bufora i  zamieniane  przez
               pojedynczą  linię,  zawierającą  połączony  tekst. Adres bieżący jest ustawiany na
               wynikową linię.

       (.)klc  Zaznacza linię małą  literą  lc.   Linia  może  być  wtedy  adresowana  jako  'lc.
               Znaczenie nie jest czyszczone aż do skasowania lub zmodyfikowania linii.

       (.,.)l  Drukuje  niedwuznacznie  adresowane  linie.  Jeśli  jest  wywołany z terminala, ed
               pauzuje na końcu każdej strony, aż do wprowadzenia nowej linii. Bieżący adres jest
               ustawiany na ostatnią drukowaną linię.

       (.,.)m(.)
               Przenosi  linie  w  buforze. Adresowane linie są przenoszone za prawostronny adres
               docelowy, który może być adresem  0  (zero).   Bieżący  adres  jest  ustawiany  na
               ostatnią przeniesioną linię.

       (.,.)n  Drukuje  adresowane  linie wraz z ich numerami linii. Bieżący adres jest ustawiany
               na ostatnią drukowaną linię.

       (.,.)p  Drukuje adresowane linie. Jeśli jest wywołany z terminala,  ed  pauzuje  na  końcu
               każdej  strony  aż  do  wprowadzenia nowej linii.  Bieżący adres jest ustawiany na
               ostatnią drukowaną linię.

       P       Włącza i wyłącza znak zachęty komend.  O ile nie  był  on  określony  opcją  linii
               komend, -p napis, to jest domyślnie wyłączony.

       q       Kończy pracę z ed.

       Q       Kończy  pracę  bezwarunkowo.  Jest to podobne do komendy q lecz niezapisane zmiany
               są niszczone bez ostrzeżenia.

       ($)r plik
               Odczytuje file za adresowaną linię. Jeśli  plik  nie  jest  podany,  używana  jest
               domyślna  nazwa  pliku.  Jeśli  nie było wcześniej domyślnej nazwy pliku, domyślna
               nazwa pliku jest ustawiana na plik.  W przeciwnym wypadku,  domyślna  nazwa  pliku
               jest niezmieniana.  Bieżący adres jest ustawiany na ostatnią odczytaną linię.

       ($)r !komenda
               Wczytuje   za  adresowaną  linią  wyjście  `!komendy',  (zobacz  !komenda  niżej).
               Domyślna nazwa pliku jest niezmieniona.  Bieżący adres jest ustawiany na  ostatnią
               wczytaną linię.

       (.,.)s/re/zamiana/
       (.,.)s/re/zamiana/g
       (.,.)s/re/zamiana/n
               Zamienia  tekst  w adresowanych liniach, odpowiadający wyrażeniu regularnemu re na
               zamianę.  Domyślnie zamieniane jest tylko pierwsze dopasowanie linii.  Po  podaniu
               przyrostka  `g' (global) zamieniane jest każde dopasowanie.  Przyrostek `n', gdzie
               n jest liczbą dodatnią, powoduje że zmieniane jest tylko n-te dopasowanie.  Błędem
               jest,  jeśli  nie  dokonano  żadnych  podstawień  na  żadnej z adresowanych linii.
               Bieżący adres jest ustawiany na ostatnią dotkniętą linię.

               re i zamiana mogą być rozdzielane dowolnym znakiem innym niż spacja i  nowa  linia
               (zobacz  komendę  `s',  niżej).  Jeśli jeden, lub dwa z ostatnich ograniczników są
               pominięte, to ostatnia dotknięta linia jest drukowana tak, jakby podano przyrostek
               `p'.

               Niecytowany  `&'  w  zamianie  jest  zamieniany  na  aktualnie  dopasowany  tekst.
               Sekwencja `\m', gdzie  m  jest  liczbą  w  zakresie  [1,9]  jest  zamieniana  m-tą
               referencją  wsteczną  wyrażenia  dopasowanego  tekstu.  Jeśli zamiana składa się z
               pojedynczego `%', to używana jest zamiana z ostatniego podstawienia.   W  zamianie
               można osadzać nowe linie po ich zacytowaniu lewym ukośnikiem (\).

       (.,.)s  Powtarza  ostatnie  podstawienie.   Ta  postać  komendy  `s'  przyjmuje przyrostek
               licznika `n', lub dowolną  kombinację  znaków  `r',  `g',  i  `p'.   Jeśli  podano
               przyrostek licznika `n', to zmieniane jest tylko n-te dopasowanie.  Przyrostek `r'
               powoduje, że zamiast  ostatnie  podstawienia,  używane  jest  wyrażenie  regularne
               ostatniego   szukania.    Przyrostek   `g'  włącza  przyrostek  global  ostatniego
               podstawienia.    Przyrostek   `p'   włącza   przyrostek   drukowania    ostatniego
               podstawienia. Bieżący adres jest ustawiany na ostatnią dotkniętą linię.

       (.,.)t(.)
               Kopiuje  adresowane  linie  za  adres,  wskazany  z  prawej strony, który może być
               adresem 0 (zero).  Bieżący adres jest ustawiany na ostatnią kopiowaną linię.

       u       Cofa ostatnią komendę i odtwarza bieżący  adres  na  taki,  jaki  był  przed  nią.
               Komendy  globalne  `g', `G', `v', i `V'.  są traktowane jako pojedyncze.  `u' jest
               samo dla siebie inwersją.

       (1,$)v/re/lista-komend
               Aplikuje listę-komend na każdej z adresowanych linii, nie pasujących do  wyrażenia
               regularnego re.  Jest to podobne do komendy `g'.

       (1,$)V/re/
               Edytuje  interaktywnie  adresowane  linie, nie odpowiadające wyrażeniu regularnemu
               re.  Jest to podobne do komendy `G'.

       (1,$)w plik
               Zapisuje adresowane linie do  pliku.   Wszelkie  poprzednie  zawartości  pliku  są
               tracone  bez  ostrzeżenia.   Jeśli  nie  ma  domyślnej  nazwy  pliku,  to jest ona
               ustawiana na plik, a w przeciwnym wypadku nie jest  zmieniana.  Jeśli  nie  podano
               nazwy pliku, używana jest nazwa domyślna. Bieżący adres nie jest zmieniany.

       (1,$)wq plik
               zapisuje adresowane linie do pliku, a następnie wykonuje komendę `q'.

       (1,$)w !komenda
               Zapisuje  adresowane  linie  na  standardowe  wejście `!komendy', (zobacz !komenda
               niżej).  Domyślna nazwa pliku i bieżący adres nie są zmieniane.

       (1,$)W plik
               Dokleja adresowane linie do końca pliku.  Jest to podobne  do  komendy  `w',  lecz
               poprzednia zawartość pliku nie jest niszczona.  Bieżący adres nie jest zmieniany.

       (.)x    Kopiuje  (wstawia)  zawartość  bufora wycinania za adresowaną linię. Bieżący adres
               jest ustawiany na ostatnią skopiowaną linię.

       (.,.)y  Kopiuje (wyszarpuje) adresowane linie do bufora wycinania.  Bufor  wycinania  jest
               nadpisywany przez dalsze wywołania `y', `s', `j', `d', lub `c'.  Bieżący adres nie
               jest zmieniany.

       (.+1)zn Przewija n linii naraz, rozpoczynając od  adresowanej  linii.  Jeśli  n  nie  jest
               podane,  używany  jest  bieżący  rozmiar  okna.  Bieżący  adres  jest ustawiany na
               ostatnią drukowaną linię.

       !komenda
               Wykonuje komendę poprzez sh(1).  Jeśli pierwszy znak komendy to `!',  to  jest  on
               zamieniany   tekstem   poprzedniej   `!komendy'.   ed  nie  przetwarza  komendy  w
               poszukiwaniu cytatów  lewoukośnikowych.  Jedna  niecytowany  `%'  jest  zamieniany
               domyślną  nazwą  pliku.   Gdy  powłoka kończy wykonywanie, na standardowym wyjściu
               drukowany jest `!'.  Bieżąca linia nie jest zmieniana.

       (.,.)#  Rozpoczyna komentarz; reszta linii, aż do nowej linii jest ignorowana.   Jeśli  po
               adresie  linii  następuje średnik, to bieżący adres jest ustawiany na ten adres. W
               przeciwnym wypadku adres nie jest zmieniany.

       ($)=    Drukuje numer linii adresowanej linii.

       (.+1)newline
               Drukuje adresowaną linię i ustawia bieżący adres na tę linię.

PLIKI

       /tmp/ed.*           Plik buforowy
       ed.hup              Plik, do którego ed zapisuje gdy terminal jest zawieszany.

ZOBACZ TAKŻE

       vi(1), sed(1), regex(3), sh(1).

       USD:12-13

       B. W. Kernighan and P. J. Plauger, Software Tools in Pascal , Addison-Wesley, 1981.

OGRANICZENIA

       ed  przetwarza  argumenty  plikowe  z  cytatami  lewoukośnikowymi,  np.  wszystkie   znaki
       poprzedzone lewym ukośnikiem w nazwie pliku są interpretowane literalnie.

       Jeśli  plik  tekstowy  nie  jest zakończony znakiem nowej linii, ed podczas odczytu/zapisu
       dopisuje go. W przypadku pliku binarnego, ed tego nie robi.

DIAGNOSTYKA

       Po błędzie, jeśli wejście ed'a  następuje  z  pliku  regularnego,  lub  "dokumentu  tutaj"
       (dokumentu  włączonego)  to  kończy;  w  przeciwnym wypadku drukuje `?' i powraca do trybu
       komend.  Wyjaśnienie ostatniego błędu jest drukowane po komendzie `h' (help).

       Próba zakończenia ed lub edycji  innego  pliku  przed  zapisaniem  zmodyfikowanego  bufora
       powoduje  błąd.  Jeśli komenda jest wstawiona drugi raz, powiedzie się, lecz zmiany bufora
       będą utracone.

       ed kończy działanie z zerem, jeśli nie było błędów. W przeciwnym wypadku z wartością >0.

INFORMACJE O TŁUMACZENIU

       Powyższe tłumaczenie pochodzi z nieistniejącego już Projektu Tłumaczenia  Manuali  i  może
       nie  być  aktualne.  W  razie  zauważenia  różnic  między  powyższym opisem a rzeczywistym
       zachowaniem opisywanego programu lub  funkcji,  prosimy  o  zapoznanie  się  z  oryginalną
       (angielską) wersją strony podręcznika za pomocą polecenia:
              man --locale=C 1 ed
       Prosimy  o  pomoc  w  aktualizacji stron man - więcej informacji można znaleźć pod adresem
       http://sourceforge.net/projects/manpages-pl/.

                                        10 listopada 1994                                   ED(1)