Jaka jest opcja P w SED?

Jaka jest opcja P w SED?
W UNIX/LINUX, sed (Redaktor strumienia) Polecenie analizuje i przekształca teksty za pomocą wyrażeń regularnych. To jedno z pierwszych narzędzi do obsługi wyrażeń regularnych. Dzisiaj, sed jest częścią specyfikacji UNIX, a zatem dostępna domyślnie we wszystkich nowoczesnych systemach UNIX/Linux.

Chociaż istnieje wiele sposobów użycia sed, Przyjrzymy się P opcja (z przykładami) w tym przewodniku.

Podstawowe użycie SED

Ta sekcja będzie oferować szybkie odświeżenie podstawowych zastosowań sed Komenda.

Struktura dowodzenia sed następująco:

$ sed

W większości przypadków, sed jest używany do funkcji podstawienia. Spójrz na następujący przykład:

$ echo „The Quick Brown Fox” | sed -e 's/Quick/Quick/'

Tutaj sed polecenie działa na zawartości Stdout z Echo Komenda. Dowiedz się więcej o stdin, stderr i stdout w Linux. W wyjściu termin „szybki” jest zastępowany „szybkimi”.

Gdybyśmy chcieli wykonać tę operację w pliku tekstowym, polecenie wyglądałoby tak:

$ sed -e 's/Quick/Quick/g' sed -demo.tekst

Zauważ, że oryginalna treść pliku nie została zmodyfikowana. Aby zmodyfikować zawartość pliku na miejscu, musimy dodać flagę „-i”. Spójrz na następujące polecenie:

$ CAT SED-DEMO.tekst
$ sed -i -e 's/Quick/Quick/g' sed -demo.tekst
$ CAT SED-DEMO.tekst

Zauważ, że musieliśmy również dodać G opcja w wyrażeniu, aby sed szuka dopasowań wzorów na całym strumieniu i wykonuje określone zadanie.

Opcja P w SED

Aby zmodyfikować jak sed obsługuje różne strumienie, dostępne jest wiele opcji. Badaliśmy wykorzystanie G opcja w kontekście sedFunkcja zastąpienia. P Opcja jest jednak używana do wyszukiwania tylko wzoru.

Zauważ, że to wielka część p. Małe litery P określa inną opcję w sed. Wszystkie te opcje należy użyć w ramach specyfikacji wzorca.

  • P: sed Wydrukuje całą zawartość w bieżącej przestrzeni wzorów.
  • P: sed Wydrukuje tylko pierwszą linię danych w bieżącej przestrzeni wzorcowej.

Pamiętaj, jak sed Domyślnie drukuje wyjście modyfikacji strumienia na konsoli? Z pomocą P I P Opcje, możemy kontrolować, co treść sed wydrukuje na konsoli.

Na przykład, aby wydrukować tylko pierwszą linię, moglibyśmy użyć następującej techniki:

Echo „Linia 1

To jest linia 2 ”| sed -n '1p'

Można to również osiągnąć za pomocą P opcja:

Echo „Linia 1

To jest linia 2 ”| sed -n '1p'

Możemy jednak zauważyć różnicę w ich zachowaniach, jeśli uwzględniamy 2 linie w buforze i wydrukować je oba:

Echo „Linia 1

To jest linia 2 ”| sed -n '1 n; P'

Tutaj w buforze były dwie linie, ale wydrukowaliśmy tylko pierwszą, ponieważ używamy P opcja.

Wniosek

W tym przewodniku badaliśmy P opcja w sed i zbadał kilka sposobów na jego wdrożenie. To tylko jeden z wielu sposobów użycia sed. Ten przewodnik pokazuje wykonanie wielu wymiany SED. Moc sed pochodzi z wdrażania wyrażeń regularnych. Dowiedz się więcej o Wyrażenia regularne w SED.

Chwila sed można znaleźć strumienie tekstowe edytuj, jeśli chcesz po prostu wyszukać określony wzór, to Grep jest optymalnym wyborem. Oprócz podstawowego użycia, Grep Polecenie obsługuje zaawansowane funkcje, takie jak wykluczenie niektórych elementów, wiele wzorów ciągów i więcej. Poprawić opanowanie Grep polecenie z 30 przykładami GREP.

Szczęśliwy komputer!