Provided by: manpages-pl_0.7-2_all 

NAZWA
sed - edytor strumieniowy do filtrowania i przekształcania tekstu
SKŁADNIA
sed [OPCJA]... {skrypt-tylko-jeśli-nie-ma-ich-więcej} [plik-wejściowy]...
OPIS
Sed jest edytorem strumieniowym. Edytor strumieniowy jest używany do wykonywania prostych przekształceń
tekstu na strumieniu wejściowym (pliku lub strumienia z potoku). Sed jest w jakimś stopniu podobny do
edytorów przestrzegających edycji skryptowych (np. ed), jednak działa czyniąc tylko jeden przebieg na
strumieniu wejściowym i dlatego jest znacznie wydajniejszy. Możliwość filtrowania tekstu w potoku przez
seda jest cechą, która w największym stopniu wyróżnia go spośród innych edytorów innego typu.
-n, --quiet, --silent
hamuje automatyczne wypisywanie bufora tekstowego
-e skrypt, --expression=skrypt
dodaje skrypt do poleceń do wykonania
-f plik-skryptu, --file=plik-skryptu
dodaje zawartość pliku-skryptu do poleceń do wykonania
--follow-symlinks
podąża za dowiązaniami symbolicznymi podczas przetwarzania w miejscu
-i[PRZYROSTEK], --in-place[=PRZYROSTEK]
edytuje pliki w miejscu (tworzy kopię zapasową, jeśli podano przyrostek)
-l N, --line-length=N
określa pożądaną długość zawijania wierszy do polecenia l
--posix
wyłącza wszystkie rozszerzenia GNU
-r, --regexp-extended
używa w skrypcie rozszerzonych wyrażeń regularnych
-s, --separate
traktuje pliki jako oddzielne, zamiast jako jeden, ciągły strumień
-u, --unbuffered
ładuje minimalną ilość danych z plików wejściowych i opróżnia bufory wyjściowe znacznie częściej
-z, --null-data
oddziela wiersze znakiem NUL
--help
wyświetla ten tekst i kończy pracę
--version
wyświetla informacje o wersji i kończy działanie
Jeśli nie podano żadnej z opcji -e, --expression, -f ani --file, to pierwszy argument niebędący opcją
jest interpretowany jako skrypt seda. Wszystkie pozostałe argumenty są nazwami plików wejściowych; jeśli
nie podano żadnych, to czytane jest standardowe wejście.
SKŁADNIA POLECEŃ
Jest to zwięzłe podsumowanie poleceń sed, przeznaczone jako przypomnienie dla osób znających program sed;
aby przeczytać pełniejszy opis konieczne jest sięgnięcie po inny typ dokumentacji (np. texinfo).
"Polecenia" nie przyjmujące adresów
: etykieta
Etykieta do poleceń b i t.
#komentarz
Komentarz kończy się wraz ze znakiem nowego wiersza (lub końcem fragmentu skryptu -e).
} Nawias klamrowy zamykający blok { }.
Polecenia z zerem lub jednym adresem
= Wypisuje bieżący numer wiersza
a \
tekst Dołącza (dodaje za) tekst, w którym każdy ewentualny znak nowego wiersza jest poprzedzony
odwrotnym ukośnikiem.
i \
tekst Wstawia (dodaje przed) tekst, w którym każdy ewentualny znak nowego wiersza jest poprzedzony
odwrotnym ukośnikiem.
q [status-zakończenia]
Natychmiast wychodzi ze skryptu seda bez przetwarzania dalszego wejścia, z wyjątkiem sytuacji, gdy
nie wyłączono automatycznego wypisywania bieżącego bufora tekstowego, który będzie wówczas nadal
wypisywany. Argument statusu zakończenia jest rozszerzeniem GNU.
Q [status-zakończenia]
Natychmiast wychodzi ze skryptu seda bez przetwarzania dalszego wejścia. Argument statusu
zakończenia jest rozszerzeniem GNU.
r nazwa-pliku
Dołącza (dodaje za) tekst odczytany z nazwy-pliku.
R nazwa-pliku
Dołącza (dodaje za) tekst odczytany z nazwy-pliku. Każde wywołanie tego polecenia odczytuje jeden
wiersz z pliku. Jest to rozszerzenie GNU.
Polecenia, które przyjmują zakresy adresów
{ Rozpoczyna blok poleceń (który kończy się znakiem } ).
b etykieta
Przechodzi do etykiety; jeśli jej nie podano, przechodzi na koniec skryptu.
c \
tekst Zastępuje wybrane wiersze tesktem, w którym każdy ewentualny znak nowego wiersza jest poprzedzony
odwrotnym ukośnikiem.
d Usuwa bufor tekstowy. Rozpoczyna nowy cykl.
D Jeśli wzorzec nie zawiera znaku nowego wiersza, rozpoczyna nowy zwykły cykl jak gdyby użyto
polecenia d. W przeciwnym razie usuwa bufor tekstowy aż do pierwszego znaku nowego wiersza i
rozpoczyna cykl od nowa z powstałym w ten sposób buforem tekstowym, bez odczytywania znaku nowego
wiersza z wejścia.
h H Kopiuje/dołącza bieżący bufor tekstowy do wewnętrznego schowka.
g G Kopiuje/dołącza wewnętrzny schowek do bufora tekstowego.
l Wypisuje bieżący wiersz w formie "wizualnie jednoznacznej".
l szerokość
Wypisuje bieżący wiersz w formie "wizualnie jednoznacznej", przełamując go po szerokość znaków.
Jest to rozszerzenie GNU.
n N Czyta/dołącza następny wiersz do bufora tekstowego.
p Wypisuje bieżący bufor tekstowy.
P Wypisuje bieżący bufor tekstowy aż do jego pierwszego znaku nowego wiersza.
s/wyrażenie-regularne/zamiennik/
Podejmuje próbę dopasowania wyrażenia-regularnego do bieżącego bufora tekstowego. Jeśli się to
uda, zastępuje dopasowaną część zamiennikiem. Zamiennik może zawierać znak specjalny &, aby
odnieść się do dopasowanej części bufora tekstowego, oraz sekwencje specjalne od \1 do \9, aby
odnieść się do odpowiedniej pasującej części wyrażenia w wyrażeniu-regularnym.
t etykieta
Jeśli s/// wykonało pomyślnie zastąpienie od czasu odczytania ostatniego wiersza wejściowego oraz
ostatniego polecenia t lub T, przechodzi do etykiety. Jeśli nie podano etykiety, przechodzi do
końca skryptu.
T etykieta
Jeśli żadne s/// nie wykonało pomyślnie zastąpienia od czasu odczytania ostatniego wiersza
wejściowego oraz ostatniego polecenia t lub T, przechodzi do etykiety. Jeśli nie podano etykiety,
przechodzi do końca skryptu. Jest to rozszerzenie GNU.
w nazwa-pliku
Zapisuje bieżący bufor tekstowy do nazwy-pliku.
W nazwa-pliku
Zapisuje pierwszy wiersz bieżącego bufora tekstowego do nazwy-pliku. Jest to rozszerzenie GNU.
x Zamienia zawartość bufora tekstowego i wewnętrznego schowka.
y/źródło/cel/
Zamienia znaki w buforze tekstowym, które znajdują się w źródle, na odpowiadające znaki w celu.
Adresy
Polecenia Seda mogą:
* nie zawierać adresów - wtedy polecenia są wykonywane na wszystkich wierszach wejściowych;
* zawierać jeden adres - są wówczas wykonywane na wierszach wejściowych pasujących do tego adresu;
* zawierać dwa adresy - polecenia są wykonywane na wszystkich wierszach wejściowych od pierwszego
adresu aż do drugiego adresu.
Należy odnotować trzy rzeczy o zakresach adresów:
* składnia to adres1,adres2 (tzn. adresy są oddzielone przecinkami);
* wiersz z dopasowanym adresem1 jest zawsze akceptowany, nawet jeśli adres2 wybiera wcześniejszy
wiersz;
* jeśli adres2 jest wyrażeniem-regularnym, to nie jest testowany w odniesieniu do wiersza, do którego
dopasowano adres1.
Po adresie (lub zakresie adresu), a przed poleceniem, można wstawić znak !, który powoduje, że polecenie
powinno być wykonane tylko na adresie (lub zakresie adresu), który nie pasuje.
Obsługiwane są następujące typy adresów:
numer Dopasowuje jedynie wiersz o podanym numerze (zwiększającym się wraz z kolejnymi plikami, chyba że
podano też opcję -s).
pierwszy~krok
Dopasowuje co krok wiersz, zaczynając od wiersza o numerze pierwszy. Na przykład "sed -n 1~2p"
wypisuje wszystkie nieparzyste wiersze w strumieniu wejściowym, a adres 2~5 dopasuje co piąty
wiersz, zaczynając od drugiego. Pierwszy może wynosić zero, w takim przypadku sed działa
identycznie, gdyby wynosił on tyle co krok (jest to rozszerzenie).
$ Dopasowuje ostatni wiersz.
/wyrażenie-regularne/
Dopasowuje wiersze pasujące do wyrażenia regularnego wyrażenie-regularne.
\zwyrażenie-regularnez
Dopasowuje wiersze pasujące do wyrażenia regularnego wyrażenie-regularne. Za z można podstawić
dowolny znak.
GNU sed obsługuje również specjalne formy dwuadresowe:
0,adres2
Rozpoczyna w stanie "dopasowany pierwszy adres", aż do momentu znalezienia adresu2. Jest to
podobne do 1,adres2 , z wyjątkiem tego, że gdy adres2 zostanie dopasowany do pierwszego wiersza
wejścia, to forma 0,adres2 będzie na końcu swojego zakresu, podczas gdy forma 1,adres2 będzie
wciąż na początku swojego zakresu. Działa to tylko gdy adres2 jest wyrażeniem regularnym.
adres1,+N
Dopasowuje adres1 do N-tego wiersza znajdującego się za adresem1
adres1,~N
Dopasowuje adres1 i wiersze za adresem1 do następnego wiersza wejściowego, którego numer wiersza
jest wielokrotnością N.
WYRAŻENIA REGULARNE
Podstawowe wyrażenia regularne (BRE) określone przez POSIX.2 powinny być obsługiwane, ale nie są
obsługiwane całkowicie, ze względu na problemy z wydajnością. Sekwencja \n w wyrażeniu regularnym pasuje
do znaku nowego wiersza, podobnie dla wyrażeń \a, \t i innych sekwencji.
BŁĘDY
Zgłoszenia błędów proszę wysyłać na adres bug-sed@gnu.org (po angielsku). Proszę również umieścić wynik
polecenia "sed --version" w treści wiadomości, jeśli to możliwe.
AUTOR
Napisane przez Jaya Fenlasona, Toma Lorda, Kena Pizziniego i Paolo Bonziniego. Strona internetowa GNU
sed: <http://www.gnu.org/software/sed/>. Ogólna pomoc dotycząca oprogramowania GNU:
<http://www.gnu.org/gethelp/>. Zgłoszenia błędów proszę wysyłać na adres: <bug-sed@gnu.org>. Proszę
upewnić się, że gdzieś w polu "Temat:" znajduje się słowo "sed".
PRAWA AUTORSKIE
Copyright © 2012 Free Software Foundation, Inc. Licencja GPLv3+: GNU GPL w wersji 3 lub późniejszej
<http://gnu.org/licenses/gpl.html>.
Jest to wolne oprogramowanie: można je zmieniać i rozpowszechniać. Nie ma ŻADNEJ GWARANCJI, w granicach
określonych przez prawo.
ZOBACZ TAKŻE
awk(1), ed(1), grep(1), tr(1), perlre(1), sed.info, dowolna z wielu książek o sedzie, FAQ seda
(http://sed.sf.net/grabbag/tutorials/sedfaq.txt), http://sed.sf.net/grabbag/.
Pełna dokumentacja sed jest dostępna w formacie Texinfo. Jeśli programy info i sed są poprawnie
zainstalowane, to polecenie
info sed
powinno dać dostęp do pełnego podręcznika.
TŁUMACZENIE
Autorami polskiego tłumaczenia niniejszej strony podręcznika man są: Przemek Borys (PTM)
<pborys@dione.ids.pl> i Michał Kułach <michal.kulach@gmail.com>.
Polskie tłumaczenie jest częścią projektu manpages-pl; uwagi, pomoc, zgłaszanie błędów na stronie
http://sourceforge.net/projects/manpages-pl/. Jest zgodne z wersją 4.2.2 oryginału.
sed 4.2.2 grudzień 2012 SED(1)