Programowanie > Bash, skrypty powłoki

Funkcja grep

(1/1)

ordan0404:
Czy ma ktoś pomysł jak takie coś zrobić?
Znajdź w pliku linijkę odpowiadającą użytkowi root. Do pliku F4.txt wypisz 4 linijki powyżeji 5 linijek poniżej tej linii (grep).
Z góry dzięki.(chodzi o  samą metodykę)

920806:
"Znajdź w pliku linijkę odpowiadającą użytkowi root", ale że ma być na początku, czy jak? Dwa słowa - "wyrażenia regularne" z egrep'em, a jeszcze man tail / head  .

1709:
Ja się spotkałem kiedyś z opcją przy komendzie grep
która umożliwia wypisanie więcej linii niż tylko szukanej np.
wypisanie szukanej linii + 5 linii poniżej lub powyżej.
( musisz znaleźć odpowiednia opcje do komendy)

Co do " metodyki "
Twój " mentor / nauczyciel " chyba celowo podaje komendy w nawiasach żebyś nie szukał komend.
Problemy można rozwiązać na wiele sposobów, ale on w nawiasach podaje Ci fragment jednego ze sposobów rozwiązania.
Twoim zadaniem jest tylko wyszukanie odpowiedniej opcji do podanej komendy aby odfiltrować swój tekst.

W Linuxie opcje komend znajdziesz w poradnikach / "manual-ach" wpisując w terminalu np.

--- Kod: ---
man grep
--- Koniec kodu ---

lub tylko opcje

--- Kod: ---
grep --help
--- Koniec kodu ---
gdzie grep to komenda do której szukamy poradnika lub opcji.

Można tez szukać poradników / manuale online
https://linux.die.net/man/1/grep
https://www.linux.pl/man/index.php?command=grep

Jeśli natomiast nie wiem jakiej komendy użyć lub w jaki sposób,
to najczęściej szukam w internecie.

- Jesli szukam przykladow (danej komendy), w wyszukiwarce wpisuje
" nazwa_komendy examples "  np.

--- Kod: ---
grep examples
--- Koniec kodu ---
- Jesli szukam konkretnego zastosowania (danej komendy) to wpisuje np.
" nazwa_komendy co_chce_aby_robila " np.

--- Kod: ---
grep show bottom line
--- Koniec kodu ---
- Uzywam specjalnie jezyka angielskiego, poniewaz w jezyku angielsku jest wiecej wynikow wyszukiwania.
- Czasami gdy wyniki wyszukiwania nie dotycza linuxa,
to poprzedzam szukany tekst slowem " linux ".

- Jeśli natomiast nie znam komendy i chce odpowiednio sformatowac tekst,
to bym szukal " linux co_chcialbym_zrobic "

--- Kod: ---
linux show bottom line
--- Koniec kodu ---
czasami probuje wyszukac takze ze slowem bash

--- Kod: ---
bash show bottom line
--- Koniec kodu ---
W tym przypadku wyniki wyszukiwania są trochę mniej precyzyjne niż z komenda grep
A jak poprawie zapytanie

--- Kod: ---
bash search line and bottom line
--- Koniec kodu ---
To wyniki wyszukiwania sa znacznie lepsze.

marcin'82:

--- Cytuj ---Z góry dzięki.(chodzi o  samą metodykę)
--- Koniec cytatu ---

--- Kod: ---
man grep
--- Koniec kodu ---

Rozkmina:

--- Kod: ---
cat plik
linia
linia
linia
czwarta powyżej
trzecia powyżej
druga powyżej
pierwsza powyżej
ROOT
pierwsza poniżej
druga poniżej
trzecia poniżej
czwarta poniżej
piąta poniżej
linia
linia
linia

--- Koniec kodu ---


--- Kod: ---
grep -B 4 -A 5 ROOT plik
czwarta powyżej
trzecia powyżej
druga powyżej
pierwsza powyżej
ROOT
pierwsza poniżej
druga poniżej
trzecia poniżej
czwarta poniżej
piąta poniżej

--- Koniec kodu ---

Nawigacja

[0] Indeks wiadomości

Idź do wersji pełnej