New Immissions/Updates:
boundless - educate - edutalab - empatico - es-ebooks - es16 - fr16 - fsfiles - hesperian - solidaria - wikipediaforschools
- wikipediaforschoolses - wikipediaforschoolsfr - wikipediaforschoolspt - worldmap -

See also: Liber Liber - Libro Parlato - Liber Musica  - Manuzio -  Liber Liber ISO Files - Alphabetical Order - Multivolume ZIP Complete Archive - PDF Files - OGG Music Files -

PROJECT GUTENBERG HTML: Volume I - Volume II - Volume III - Volume IV - Volume V - Volume VI - Volume VII - Volume VIII - Volume IX

Ascolta ""Volevo solo fare un audiolibro"" su Spreaker.
CLASSICISTRANIERI HOME PAGE - YOUTUBE CHANNEL
Privacy Policy Cookie Policy Terms and Conditions
Sed (program) - Wikipedia, wolna encyklopedia

Sed (program)

Z Wikipedii

Właściwy tytuł tego artykułu to sed (program). Z powodu ograniczeń technicznych tytuł tego artykułu jest nieprawidłowy.

sed (ang. Stream EDitor – edytor strumieniowy) – program służący do przetwarzania plików tekstowych. Mimo prostoty, program dysponuje dużymi możliwościami.

sed jest filtrem – pobiera dane w postaci wierszy tekstu ze standardowego wejścia, przetwarza je zgodnie z poleceniami podanymi w wierszu poleceń lub zapisanymi w pliku i przesyła wyniki operacji na standardowe wyjście. Cechą charakterystyczną seda jest to, że wykonuje on na danym wierszu wszystkie polecenia, jakie są do wykonania. Ponieważ przetwarzanie odbywa się wiersz po wierszu, sed nie ma praktycznie żadnych ograniczeń na wielkość przetwarzanego pliku.

Sed nadaje się szczególnie do przetwarzania plików o pewnej strukturze. Napisany został pierwotnie przez Lee E. McMahona dla systemu UNIX w roku 1973, w chwili obecnej dostępny jest praktycznie dla każdego systemu operacyjnego, który dysponuje wierszem poleceń.

Zestaw poleceń programu sed wzorowany jest na poleceniach programu ed i większość z nich działa podobnie, jeśli uwzględni się specyfikę seda. Na przykład, polecenie 25d działa w sedzie następująco: sprawdza, czy bieżący wiersz jest 25 wierszem przetwarzanego pliku i jeśli tak, to nie kieruje go na wyjście ("usuwa" go), a jeśli nie, wiersz pojawi się na wyjściu. Jednak nie wszystkie polecenia eda mogły zostać zaimplementowane, w szczególności te, które odpowiedzialne są za kopiowanie lub przenoszenie tekstu. Zamiast tego, sed dysponuje buforem, który pozwala przechować wybrane wiersze i zestawem poleceń do manipulacji nimi. Na przykład, polecenie eda 25t76 (skopiuj wiersz 25 do 76) można zrealizować w sedzie jako dwa polecenia: 25h; 76g – przechowaj wiersz 25 w buforze i wstaw po napotkaniu wiersza 76.

Oto typowy przykład wywołania seda:

sed -e 's/dobry/zły/g' plik_wejściowy > plik_wyjściowy

s oznacza zastępowanie, g globalne, w całym wierszu. Po pierwszym ukośniku pojawia się wyrażenie regularne, opisujące tekst, który ma być wyszukany, po drugim wyrażenie, które ma zastąpić wyszukany tekst. Polecenie zastępowania jest najczęściej wykonywanym poleceniem seda.

Przykład wywołania seda z dołączonym zewnętrznym plikiem poleceń polecenia.sed:

sed -f polecenia.sed plik_wejściowy > plik_wyjściowy

Następujące wywołanie usuwa z pliku wszystkie puste wiersze, lub te, które zawierają wyłącznie spacje:

sed -e '/^\ *$/d' inputFileName 

Przykład ten wykorzystuje kilka metaznaków używanych w wyrażeniach regularnych seda:

  • ^ – pasuje do początku wiersza
  • $ – pasuje do końca wiersza
  • . – pasuje do dowolnego znaku
  • * – pasuje do dowolnej (również zerowej) liczby wystąpień poprzedzającego znaku
  • [ ] – pasuje do dowolnego znaku wewnątrz nawiasów [ ]

De facto sed jest prostym językiem programowania i mimo że nie pozwala na korzystanie z żadnych zmiennych, dopuszcza jedynie proste instrukcje skoku, to jest językiem zupełnym w sensie Turinga.

sed wyewoluował z grepa, programu wyszukującego frazy tekstowe w plikach i był jednym z pierwszych programów unixowych pozwalających na edycję plików z wiersza poleceń, a jego pojawienie się stanowiło impuls do powszechnego używania wyrażeń regularnych. Podobny w idei działania awk może być traktowany jako następca seda. Wraz z awkiem, sed uważany jest za prekursora języka Perl. W szczególności, s/// jest poleceniem Perla.

Mimo sędziwego wieku sed nadal jest używany i rozwijany ze względu na szybkość działania. W specyficznych operacjach bije na głowę zarówno AWKa jak i Perla. Ciekawym rozwinięciem seda jest GNU sed pozwalający na bezpośrednią zmianę przetwarzanego pliku i Super-sed, którego składnia jest zgodna ze składnią Perla.

[edytuj] Zobacz też

[edytuj] Linki zewnętrzne

Static Wikipedia (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -

Static Wikipedia 2007 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -

Static Wikipedia 2006 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu

Static Wikipedia February 2008 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu