SED - Stream EDitor. edytor strumieniowy. Bogumił Konopka W-11/I-21 Politechnika Wrocławska

Podobne dokumenty
Przedstawię teraz tzw. podstawowe symbole wyrażenia regularne (BRE, Basic Regular Expression)

Przetwarzanie tekstu 2. Operacje na plikach tekstowych w systemie Linux

Wstęp do informatyki 2011/2012. Wyrażenia regularne (sed)

2.6 Edytor sed (Stream Editor)

JĘZYK SHELL JEST PEŁNYM JĘZYKIEM PROGRAMOWANIA

Wyrażenia regularne. Wyrażenia regularne 1/41

Linux Filtr grep. Opracował: Arkadiusz Curulak WSIiE TWP w Olsztynie

Bash - wprowadzenie. Bash - wprowadzenie 1/39

Edytor strumieniowy sed

J ezyk AWK Kurs systemu UNIX

Języki formalne i automaty Ćwiczenia 6

Przekierowanie wejścia wyjścia:

Różne pożyteczne polecenia oraz wyrażenia regularne. Kurs systemu Unix 1

Zakład Systemów Rozproszonych

Wstęp do Informatyki dla bioinformatyków

EDYTOR TEKSTOWY VIM WYBRANE POLECENIA. Pracownia Informatyczna 5

Systemy operacyjne 12

Systemy operacyjne. Laboratorium 9. Perl wyrażenia regularne. Jarosław Rudy Politechnika Wrocławska 28 lutego 2017

Linux Polecenia. Problem nadpisywania plików. Zmienna noclobber i noglob. Filtry i metaznaki. Problem nadpisywania plików. Opracował: Andrzej Nowak

Temat zajęć: Filtry, strumienie standardowe oraz przetwarzanie potokowe. stderr

Administracja sieciowymi systemami operacyjnymi III Klasa - Linux

Znaki globalne w Linuxie

System operacyjny Linux

Instrukcja SO powłoka BASH i skrypty powłoki Istotne jest zrozumienie działania narzędzia history powłoki BASH. Każde polecenie wprowadzone i

Podstawy programowania. Wykład: 9. Łańcuchy znaków. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

Środowisko programisty Zestaw 5

Wstęp do programowania. Wykład 1

Funkcje standardowe. Filtrowanie

SQL, LIKE, IN, CASE, EXISTS. Marcin Orchel

Projekty zaliczeniowe Podstawy Programowania 2012/2013

Skrypty powłoki Skrypty Najcz ciej u ywane polecenia w skryptach:

Środowisko programisty Zestaw 4

Podstawy programowania. Wykład: 11. Trochę różnych przykładów. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

Podstawy Kompilatorów

Przydatne sztuczki - sql. Na przykładzie postgres a.

Systemy operacyjne. Laboratorium 5. Awk podstawy. Jarosław Rudy Politechnika Wrocławska 28 lutego 2017

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania

Projektowanie aplikacji internetowych Pisanie skryptów wiersza poleceń - pętle

Wyszukaj w pomocy. Więcej w witrynie Office.com: Pobieranie Obrazy Szablony

Podstawy programowania. Wykład: 9. Łańcuchy znaków. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

PODSTAWY INFORMATYKI

1 Przygotował: mgr inż. Maciej Lasota

Formaty obrazów rastrowych biblioteki PBM

Architektura systemów informatycznych. Powłoka systemowa Architektura procesora

Laboratorium 6: Ciągi znaków. mgr inż. Leszek Ciopiński dr inż. Arkadiusz Chrobot dr inż. Grzegorz Łukawski

Stałe, znaki, łańcuchy znaków, wejście i wyjście sformatowane

WYDZIAŁ ELEKTROTECHNIKI, AUTOMATYKI I INFORMATYKI INSTYTUT AUTOMATYKI I INFORMATYKI KIERUNEK AUTOMATYKA I ROBOTYKA STUDIA STACJONARNE I STOPNIA

Ćwiczenie 1. Wprowadzenie do programu Octave

Zastosowanie filtrów w Linuksie

Elementy wyrażeń regularnych

Wyrażenia regularne. Wojciech Tabiś Łukasz Jankowski

1. Kalkulator czterech działań. 2. Konwersja ciągu znaków do tablicy.

Struktura pliku wejściowego ipko biznes PLA/MT103

OPCJE -A num, --after-context=num Wypisuje po pasujących liniach num linii następującego kontekstu.

Wstęp 7 Rozdział 1. OpenOffice.ux.pl Writer środowisko pracy 9

Definiowanie języka przez wyrażenie regularne(wr)

Matematyczne Podstawy Informatyki

1. Wyrażenia regularne. Symbole w wyrażeniach regularnych 1 :

Technologie informacyjne lab. 4

1. Znajdź za pomocą programu locate wszystkie pliki które zawierają w nazwie słowo netscape locate netscape

Systemy operacyjne na platformach mobilnych 2 Podstawy obsługi powłoki Bash

Podstawy języka SQL Co to jest SQL? Możliwości SQL SQL*Plus

Skrypty powłoki w systemie Linux

KATEGORIA OBSZAR WIEDZY

Pracownia Komputerowa wykład III

Wstęp do programowania INP003203L rok akademicki 2018/19 semestr zimowy. Laboratorium 2. Karol Tarnowski A-1 p.

Zaawansowane programowanie obiektowe - wykład 5

Operatory d - kasuj (do bufora tymczasowego) c - zmień y - zapamiętaj (yank) > - przesuń w prawo < - przesuń w lewo. Informatyka MPDI2. np.

Technologie informacyjne: Arkusz kalkulacyjny

Metody i analiza danych

Wymagania edukacyjne z informatyki dla klasy szóstej szkoły podstawowej.

Sylabus Moduł 2: Przetwarzanie tekstów

1. Zaczynamy! (9) 2. Edycja dokumentów (33)

PRACOWNIA INFORMATYCZNA BASH - PODSTAWOWE INFORMACJE

Pracownia Informatyczna Instytut Technologii Mechanicznej Wydział Inżynierii Mechanicznej i Mechatroniki. Podstawy Informatyki i algorytmizacji

Programowanie w Logice

Programowanie w języku Python. Grażyna Koba

Zakres tematyczny dotyczący kursu PHP i MySQL - Podstawy pracy z dynamicznymi stronami internetowymi

Ćwiczenie 1. Wprowadzenie do programu Octave

Wstęp do systemu Linux

Instrukcja programu mam wersja 1.02.

Opis: Instrukcja warunkowa Składnia: IF [NOT] warunek [AND [NOT] warunek] [OR [NOT] warunek].

Podstawowe I/O Liczby

Zadanie Zaobserwuj zachowanie procesora i stosu podczas wykonywania następujących programów

3. Opracować program kodowania/dekodowania pliku tekstowego. Algorytm kodowania:

Niektóre katalogi są standardowymi katalogami zarezerwowanymi do użytku przez system. Znaczenie wybranych katalogów systemowych jest następujące:

Wykład 8: klasy cz. 4

Powłoka I. Popularne implementacje. W stylu sh (powłoki zdefiniowanej w POSIX) W stylu csh. bash (najpopularniejsza) zsh ksh mksh.

Instrukcja obsługi programu Monitor Wydruków

Laboratorium nr 4. Temat: SQL część II. Polecenia DML

System operacyjny Linux

W pierwszej kolumnie wyświetlany jest identyfikator procesu (pid)

Skorzystaj z Worda i stwórz profesjonalnie wyglądające dokumenty.

Rekurencja (rekursja)

Języki programowania zasady ich tworzenia

Definicje. Algorytm to:

ABC 2002/XP PL EXCEL. Autor: Edward C. Willett, Steve Cummings. Rozdział 1. Podstawy pracy z programem (9) Uruchamianie programu (9)

1 Podstawy c++ w pigułce.

Kompilator języka Basic można bezpłatnie pobrać ze strony z zakładki DOWNLOAD.

INFORMATYKA Studia Niestacjonarne Elektrotechnika

Transkrypt:

04.01.2010 SED - Stream EDitor edytor strumieniowy Bogumił Konopka W-11/I-21 Politechnika Wrocławska

Jak działa sed? 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 przesyła wyniki operacji na standardowe wyjście.

Zalety Dostępność sed jest dostępny we wszystkich aktualnych dystrybucjach Linuksa Prostota jest narzędziem prostym przy jednocześnie szerokim wachlarzu zastosowań Brak ograniczeń rozmiarami plików ze względu na przetwarzanie wiersz po wierszu Przykład 1!

Składnia sed [-n] [-g] [-e skrypt ] [-f splik ] [ plik ] n hamuje normalne wyjście g powoduje, że sed zachowuje się tak, jakby każda z komend skryptu miała przyrostek g e załącza pojedynczą komendę edycyjną z następującego po niej argumentu; jeśli komend jest więcej, to są one wykonywane w kolejności pojawienia się -f powoduje, że komendy są pobieranego z pliku splik"; jeśli jest ich kilka, to są one wykonywane w kolejności pojawienia się;

Polecenia Komendy: d delete usuwanie p print drukowanie s substitute zamiana Adresowanie: Numer wiersza Zakres wierszy Wyrażenia regularne

Proste polecenia - przykłady sed -ne 'p' input // wydrukuje cały plik sed -e 'd' input // nie wydrukuje (skasuje) niczego sed -e '1d' input // nie wydrukuje tylko pierwszej lini sed -e '1,10d' input // nie wydrukuje lini od 1-10 sed -e 'p' input // wydrukuje każdą linię dwa razy plik Przykład 2!

Adresowanie z wykorzystaniem wyrażeń regularnych Wyrażenia regularne wzorce opisujące łańcuch symboli, algorytmy w efektywny sposób określają, czy podany ciąg znaków pasuje do wzorca lub wyszukują w tekście wystąpienia wzorca.

Wyrażenia regularne Znak Znaczenie ^ Początek wiersza $ Koniec wiersz. Dowolny znak * 0 lub więcej powtórzeń poprzedniego znaku [ ] Znak pomiędzy [ i ] Wyr. regularne Znaczenie /./ Wiersz zawierający co najmniej jeden znak /../ Wiersz zawierający co najmniej dwa znaki /[abc]/ Wiersz zawierający a, b lub c /[abc]/ Wiersz zaczynający się od a,b lub c /^#/ Wiersz zaczynający się od # /}^/ Wiersz kończący się }

Adresowanie z wykorzystaniem wyrażeń regularnych - przykłady sed -ne /DSSP/p input // wydrukuje linie z DSSP sed -ne /[ss]bjct/p input //wydrukuje linie z sbjct lub Sbjct sed -ne '/^\s.*[1-9]:/p' input //wydrukuje linie zaczynające się spacją oraz zawierające liczbę po której następuje : Przykład 3

Adresowanie od - do sed -n -e '/POCZATEK/,/KONIEC/p' input Polecenie wydrukuje cały tekst od znalezienia wzorca POCZATEK, aż do natrafienia na wzorzec KONIEC sed -ne '/<PRE>/,/<\/PRE>/p' input Przykład 4

Polecenie zamiany - s Polecenie podstawienia pozwala wymienić określony ciąg znaków innym ciągiem znaków s/ / / sed -e 's/pdb/database/' input sed -e '1,50s/MOLECULE/PROTEIN/' input //polecenie zmieni w liniach 1-50 wyraz MOLECULE na PROTEIN sed -e '1,50!s/MOLECULE/PROTEIN/' input //polecenie zmieni wyraz MOLECULE na PROTEIN wszędzie poza l1-50

W instrukcji zamiany również możemy korzystać z wyrażeń regularnych sed -e '1,50s/[a-z0-9]\{4\}/protein/' input sed -e '1,50s/ [a-z0-9]\{4\}/protein/' input

Zaawansowane podstawianie 1 Gdy chcemy dodać coś do lini: & - zmienna przechowująca łańcuch pasujący do wzorca sed -e '1,50!s/MOLECULE/& PROTEIN/' input // komenda zastąpi wystąpienia wyrazu MOLECULE przez MOLECULE PROTEIN Przykład 6

Zaawansowane podstawianie 2 Definiowanie regionów umożliwia dowolne odwoływanie się do poszczególnych z nich Wyrażenie umieszczane jest w nawiasach poprzedzonych ukośnikiem \(wyr\) Odwołanie odbywa się poprzez liczbę porządkową regionu poprzedzoną ukośnikiem np. \1 sed -n -e 's/.*[0-9]:[\t ]*\([a-z0-9]*-[a-z ]\).*/\1/p' input Przykład 7

Inne przykłady Pre-processing bazy danych Przeformatowanie pliku wejściowego Usuwanie zbędnych linii

Źródła i dodatkowe informacje http://www.gentoo.org/doc/pl/articles/l-sed1.xml http://www.gentoo.org/doc/pl/articles/l-sed2.xml http://www.gentoo.org/doc/pl/articles/l-sed3.xml http://www.grymoire.com/unix/sed.html#uh-nl http://www.grymoire.com/unix/regular.html http://www.lug.or.kr/files/cheat_sheet/regular-expressions-cheat-sheet-v2.png http://www.gnu.org/software/sed/manual/sed.html