Składnia
grep [wzór] [nazwa pliku]
Po użyciu GREP pojawia się wzór. Wzór implikuje sposób, w jaki chcemy go używać do usuwania dodatkowej przestrzeni w danych. Zgodnie z wzorem opisano nazwę pliku, przez którą wykonuje się wzór.
Warunek wstępny
Aby łatwo zrozumieć przydatność GREP, musimy zainstalować Ubuntu w naszym systemie. Podaj dane użytkownika, podając nazwę użytkownika i hasło do uprawnień w dostępie do aplikacji Linux. Po zalogowaniu otwórz aplikację i wyszukaj terminal lub zastosuj klawisz skrótów Ctrl+Alt+T.
Za pomocą [: puste:] słowo kluczowe
Możesz utworzyć plik w edytorze tekstu lub z wierszem poleceń w terminalu. Aby utworzyć plik na terminalu, w tym następujące polecenia.
$ echo „tekst do wprowadzenia w pliku”> nazwa pliku.tekst
Nie ma potrzeby tworzenia pliku, jeśli jest już obecny. Wystarczy wyświetlić go za pomocą dołączonego polecenia:
$ Cat Filename.tekst
Załóżmy, że mamy plik o nazwie Bfile o rozszerzeniu tekstu. Tekst napisany w tych plikach zawiera przestrzenie między nimi, jak pokazano na poniższym rysunku.
$ echo „Nazywam się Guria.
jestem dobrym uczniem.
Czytałem w klasie 5.
mam jednego brata i jedną siostrę
moja matka jest gospodynią domową
chcę iść do szkoły
"> Bfile.tekst
Wyświetl zawartość pliku, jak pokazano poniżej:
$ cat bfile.tekst
Te puste linie można usunąć za pomocą pustego polecenia, aby zignorować puste przestrzenie między słowami lub ciągami.
$ egrep '^[: puste:]]*[^[: blank:]#]' bfile.tekst
Po zastosowaniu zapytania puste przestrzenie między liniami zostaną usunięte, a wyjście nie będzie już zawierać dodatkowej przestrzeni. Pierwsze słowo jest wyróżnione jako przestrzenie między ostatnim słowem linii i między pierwszymi słowami następnego wiersza są usuwane. Możemy również zastosować warunki do tego samego polecenia GREP, dodając tę pustą funkcję, aby usunąć bezużyteczne miejsce na wyjściu.
Używając [: Space:]
Kolejny przykład ignorowania przestrzeni wyjaśniono tutaj. Najpierw utworzyć nasz plik tekstowy na terminalu:
$ echo „Nazywam się Hamna
Jestem gospodynią domową
Chcę nauczyć się programowania
mam jedną córkę
"> File20
Nie wspominając o rozszerzeniu pliku, najpierw wyświetlimy istniejący plik za pomocą polecenia.
$ cat file20
Spójrzmy na to, jak dodatkowa przestrzeń jest usuwana za pomocą polecenia GREP oprócz [: Space:] Słowo kluczowe. Opcja GREP -V pomoże wydrukować linie, które nie mają pustych linii i dodatkowych odstępów, które są również zawarte w formularzu akapitu.
$ grep -v '^[: Space:]]*$' File20
Zobaczysz, że dodatkowe linie są usuwane, a wyjście jest w sekwencji formy pod względem linii. W ten sposób metodologia GREP -V jest bardzo pomocna w uzyskaniu wymaganego celu.
Zróbmy inny przykład z następującym plikiem danych:
$ echo "GREP to wszechstronne polecenie, które pomaga nowemu użytkownikowi.
Służy do wyszukiwania nazw plików za pomocą poleceń.
Możemy udać się do ManNual, używając Grep Man
"> FileG.tekst
Wyjście jest następujące:
Stosując polecenie, nasz plik wyjściowy został uzyskany. Tutaj możemy zobaczyć dane bez odstępów między wierszami, które są zapisane.
$ grep -v '^[: space:]]*$' FileG.tekst
Oprócz długich poleceń możemy również przejść z krótkimi pisemnymi poleceniami w Linux i Unix, aby wdrożyć GREP obsługuje w nim znaki skrótów.
$ grep „\ s”.tekst
Widzieliśmy, w jaki sposób wyjście jest uzyskiwane przez zastosowanie poleceń z wejścia. Tutaj dowiemy się, w jaki sposób wkład jest utrzymywany z wyjścia.
$ grep „\ s”.TXT> TMP.txt && mv tmp.TXT FileG.tekst
Tutaj użyjemy tymczasowego pliku tekstowego z rozszerzeniem tekstu o nazwie TMP do przesyłania filtrowanej treści z powrotem do oryginalnego pliku.
Za pomocą ^#
Utwórzmy nowy plik danych, aby przetestować tę wersję składniową:
$ echo „Projektowanie graficzne to dobra platforma projektowania
i tworzenie wizytówek logosu
i plakaty itp. Photoshop
i ilustrator są używane do tego "> plikib.tekst
$ cat FileB.tekst
Plik tekstowy zawiera 4 wiersze, mając między nimi miejsce. Te linie przestrzeni można łatwo usunąć za pomocą określonego polecenia.
$ grep -ev "^#|^$" fileB.tekst
Regularne rozszerzone operacje są włączone przez -e, co pozwala na wszystkie wyrażenia regularne, zwłaszcza rurowe. Rura jest używana jako opcjonalny warunek „lub” w dowolnym wzorze.„^#”. To pokazuje dopasowanie linii tekstowych w pliku, który zaczyna się od znaku #. „^$” Będzie pasować do wszystkich darmowych przestrzeni w tekstach lub pustych liniach.
Wyjście pokazuje całkowite usunięcie dodatkowej przestrzeni między wierszami obecnymi w pliku danych. W tym przykładzie widzieliśmy, że w poleceniu, że „^#” jest najważniejszy, co oznacza, że tekst jest pierwszy dopasowany. „^$” Pojawia się po | Operator, więc wolna przestrzeń jest później dopasowana.
Za pomocą ^$
Podobnie jak wspomniany powyżej przykład, będziemy mieć te same wyniki, ponieważ polecenie jest prawie takie samo. Jednak wzór jest zapisany przeciwnie. File22.TXT to plik, którego będziemy używać do usuwania przestrzeni.
$ echo „Pismo techniczne jest dobrym feildem nauki
Jest to pole analityczne
Możemy się w tym nauczyć wiele rzeczy
Pisanie biznesowe to kategoria pisania
DZIĘKUJEMU FOT UCZYTA ”> FILE22.tekst
$ grep -v '^$' file22.tekst
Stosuje się tę samą metodologię, z wyjątkiem pracy z priorytetem. Zgodnie z tym poleceniem, najpierw bezpłatne przestrzenie zostaną dopasowane, a następnie pliki tekstowe są dopasowane. Wyjście zapewni sekwencję linii, usuwając w nich dodatkowe luki.
Inne proste polecenia
Grep '^…' File22.tekst
grep '.„File22.tekst
Oba są tak proste i pomagają usunąć luki w liniach tekstowych.
Wniosek
Usuwanie bezużytecznych luk w plikach za pomocą wyrażeń regularnych jest dość łatwym podejściem do osiągnięcia płynnej sekwencji danych i utrzymania spójności. Przykłady są wyjaśnione w szczegółowy sposób, aby ulepszyć informacje dotyczące tematu.