• Artykuły
  • Forum
  • Ciekawostki
  • Encyklopedia
  • Sed - program



    Podstrony: [1] 2 [3]
    Przeczytaj także...
    AWK – interpretowany język programowania, którego główną funkcją jest wyszukiwanie i przetwarzanie wzorców w plikach lub strumieniach danych. Jest także nazwą programu początkowo dostępnego dla systemów operacyjnych będących pochodnymi UNIX-a, obecnie także na inne platformy.Perl – interpretowany język programowania autorstwa Larry’ego Walla początkowo przeznaczony głównie do pracy z danymi tekstowymi, obecnie używany do wielu innych zastosowań. Wzorowany na takich językach jak C, skryptowe: sed, awk i sh oraz na wielu innych.
    Składnia[ | edytuj kod]

    Opcje, z którymi można uruchomić program:

  • -n – na wyjściu będą wypisywane jedynie linie, na których wykonano komendę p lub s z parametrem p.
  • -e – stosujemy, gdy przetwarzamy wiele poleceń lub skryptów.
  • -f – dzięki temu argumentowi, wczytujemy komendy z pliku.
  • -v – wyświetlenie informacji o programie.
  • -t – wyłączenie wyjścia z istotnych komend powłoki, które są wykonywane.
  • -q – likwiduje ostrzeżenia o rezultatach podstawienia.
  • -i – edycja w miejscu, zapisuje zmiany do oryginalnego pliku
  • -b – zapisanie kopii zapasowej oryginalnego pliku.

  • Użycie seda za pośrednictwem CLI (wiersza poleceń):

    Wyrażenia regularne (ang. regular expressions, w skrócie regex lub regexp) – wzorce, które opisują łańcuchy symboli. Teoria wyrażeń regularnych jest związana z teorią języków regularnych. Wyrażenia regularne mogą określać zbiór pasujących łańcuchów, mogą również wyszczególniać istotne części łańcucha.grep – jeden z podstawowych programów wchodzących w skład systemu Unix. Służy do znajdowania w strumieniu wejścia (plik, lub po prostu wpisywany tekst) linii zawierających ciąg znaków pasujących do danego wyrażenia regularnego. Został napisany przez Kena Thompsona.
    sed -i 's/wyraz1/wyraz2/' plik1
    

    Wtedy w pliku plik1, w każdym wierszu pierwsze wystąpienie ciągu znaków wyraz1 zostanie zastąpione przez wyraz2. Komenda s/ oznacza konieczność zastąpienia ciągu znakowego. Jeżeli zamiana ma nie dotyczyć tylko pierwszego, a wszystkich wystąpień w wierszu, należy użyć opcji /g oznaczającej wystąpienia globalne.

    ed to standardowy edytor wierszowy systemu UNIX. ed przyjmuje, że tekst podlegający obróbce podzielony jest na wiersze i pozwala jedynie na modyfikacje wskazanych wierszy tekstu za pomocą poleceń wydawanych programowi w trybie interaktywnym, w podobny sposób jak w wierszu poleceń systemu DOS czy UNIX. Zmusza to użytkownika do operowania numerami wierszy tekstu.BSD (ang. Berkeley Software Distribution, czasami nazywany Berkeley Unix) – odmiana systemu operacyjnego Unix wywodząca się ze stworzonych na Uniwersytecie Kalifornijskim Berkeley rozszerzeń dla systemu rozwijanego przez firmę AT&T. Także potoczna nazwa licencji BSD, na której te systemy są wydawane oraz pokrewnych licencji tego typu (np. licencja MIT).

    W przypadku zapisu wyniku do edytowanego pliku:

    sed -i 's/wyraz1/wyraz2/g' plik1
    

    W przypadku potrzeby zapisania zmiany do pliku o nazwie plik2:

    sed 's/wyraz1/wyraz2/g' plik1 > plik2
    

    Można również użyć komendy bezpośrednio w pliku:

    echo "tekst do przetworzenia" | sed "s/do przetworzenia/przetworzony/"
    

    Jeżeli wymagane jest użycie kilka razy seda na jednym tekście, można zamiast:

    echo "tekst do przetworzenia" | sed 's/tekst/Tekst/' | sed 's/do/po/' | sed 's/przetworzenia/przetworzeniu/'
    

    użyć polecenia tylko raz, a następne poprzedzać jedynie średnikiem:

    Unix Time-Sharing System (pisane również jako UNIX, choć nie jest to skrót – nazwa „UNIX” jest kalamburem określenia Multics, który był wzorem dla Uniksa) – system operacyjny rozwijany od 1969 r. w Bell Labs (UNIX System Laboratories, USL) przez Dennisa Ritchie i Kena Thompsona. W latach 70. i 80. zdobył bardzo dużą popularność, co zaowocowało powstaniem wielu odmian i implementacji. Część z nich, w szczególności Linux oraz OS X, jest w użyciu do dziś. UNIX jest zarejestrowanym znakiem towarowym The Open Group.Wiersz poleceń (ang. Command Line Interface, CLI), to jeden z najczęściej spotykanych sposobów interakcji człowieka z komputerem. Inne przykłady to interfejs tekstowy oraz interfejs graficzny.
    echo "tekst do przetworzenia" | sed -e 's/tekst/Tekst/;s/do/po/;s/przetworzenia/przetworzeniu/'
    

    Podczas wyszukiwania wzorca, można skorzystać ze znaków specjalnych:

    Również ze względu na ich uniwersalność, w dobrym tonie jest używanie klas znakowych podczas wyszukiwania wzorca.

    Linki zewnętrzne[ | edytuj kod]

  • opis szczegółowy polecenia sed na stronie gnu.org
  • Witryna o sed i kilka uwag o aspektach pracy w Windows/DOS
  • Maszyna Turinga w sed
  • Bell Telephone Laboratories lub w skrócie Bell Labs – oddział badawczy i wdrożeniowy telekomunikacyjnej korporacji amerykańsko-francuskiej Alcatel-Lucent.W systemach Unix oraz w systemach uniksopodobnych polecenia są często programami uruchamianymi z wiersza poleceń powłoki systemowej. Często różne powłoki mają dodatkowo wbudowane własne implementacje niektórych poleceń; np. zawierają wersję polecenia dostępnego jako /bin/echo. To, która wersja polecenia będzie wykonana domyślnie zależy od tego, która powłoka jest używana oraz od konfiguracji systemu. Podstawową powłoką większości systemów Unix jest Bourne shell dostępna zwykle jako /bin/sh lub /usr/bin/sh, jednak częściej w pracy interaktywnej używa się wywodzących się z niej, bardziej rozbudowanych powłok takich jak bash, Korn shell, Z shell, czy też spokrewnionych C shell i tcsh, z nowszych popularność zyskuje fish. Większość powłok może być także używana jako języki skryptowe, co pozwala użytkownikowi na wykonywanie rozbudowanych poleceń wykorzystujących wiele programów oraz pisanie skryptów automatyzujących często wykonywane czynności. Za pomocą mechanizmów potoków i kolejek można w łatwy sposób przekazywać dane pomiędzy wieloma programami tworząc z nich bardziej skomplikowane narzędzia.


    Podstrony: [1] 2 [3]



    w oparciu o Wikipedię (licencja GFDL, CC-BY-SA 3.0, autorzy, historia, edycja)

    Warto wiedzieć że... beta

    W teorii obliczalności o maszynie lub języku programowania mówimy, że jest kompletny w sensie Turinga lub zupełny, jeśli można za jego pomocą rozwiązać identyczną klasę problemów obliczeniowych, jak na uproszczonym modelu programowalnego komputera zwanego maszyną Turinga. W praktyce oznacza to, że jeśli dany język lub maszyna potrafi wykonać lub wyrazić każdy algorytm, określany jest mianem zupełnego, przy czym nie jest wymagane, by algorytm ten realizowany był prosto, wydajnie bądź efektywnie.

    Reklama

    Czas generowania strony: 0.008 sek.