Lab06-WyszukiwanieWz..

Transkrypt

Lab06-WyszukiwanieWz..
Środowisko programisty
Wyszukiwanie plików
dr hab. Andrzej Zbrzezny, prof. nadzw. AJD
Instytut Matematyki i Informatyki
Akademia Jana Długosza w Cz˛estochowie
30 grudnia 2016
dr hab. Andrzej Zbrzezny (IMI AJD)
Środowisko programisty
30 grudnia 2016
1/7
Wyszukiwanie wzorców w plikach tekstowych
Przeszukiwanie bazy nazw plików
$ locate bash-completion
Przeszukiwanie bazy nazw plików bez uwzgledniania
˛
wielkości
liter
$ locate -i bash-completion
Zarzadzanie
˛
wynikami otrzymanymi podczas przeszukiwania bazy
nazw plików
$ locate -n 3 bash-completion
Aktualizowanie bazy danych używanej przez locate
$ updatedb
$ time updatedb
dr hab. Andrzej Zbrzezny (IMI AJD)
Środowisko programisty
30 grudnia 2016
2/7
Wyszukiwanie wzorców w plikach tekstowych
Szukanie wzorców w plikach tekstowych
$ grep type /usr/include/math.h
albo
$ grep 'type' /usr/include/math.h
Wyszukiwanie całych słów w plikach
$ grep -w 'type' /usr/include/math.h
Wyświetlanie numerów wierszy, w których wystepuje
˛
szukane
słowo:
$ grep -w -n 'type' /usr/include/math.h
albo
$ grep -wn 'type' /usr/include/math.h
dr hab. Andrzej Zbrzezny (IMI AJD)
Środowisko programisty
30 grudnia 2016
3/7
Wyszukiwanie wzorców w plikach tekstowych
Rekurencyjne wyszukiwanie słów w plikach
$ grep -r -w 'Linux ' /usr/include
albo
$ grep -rw 'Linux ' /usr/include
Rekurencyjne wyszukiwanie słów w plikach bez uwzgledniania
˛
wielkości liter
$ grep -r -w -i 'Linux' /usr/include/
albo
$ grep -rwi 'Linux' /usr/include/
Wyświetlanie nazw tych plików, które zawieraja˛ szukane słowo
$ grep -l -w 'Linux' /usr/include/
albo
$ grep -lw 'Linux' /usr/include/
dr hab. Andrzej Zbrzezny (IMI AJD)
Środowisko programisty
30 grudnia 2016
4/7
Wyszukiwanie wzorców w plikach tekstowych
Wyszukiwanie ciagów
˛
znaków w wynikach poleceń
$ ls -l /usr/bin | grep 'xz'
Wyświetlanie kontekstu ciagów znaków wystepuj
˛ acych
˛
w plikach
$ grep -B 2 'Number' /usr/include/math.h
$ grep -A 2 'Number' /usr/include/math.h
$ grep -C 2 'Number' /usr/include/math.h
Wyświetlanie wierszy, w których nie wystepuje
˛
określony ciag
˛
znaków
$ grep -v 'def' /usr/include/math.h
Wyświetlanie wierszy, w których nie wystepuje
˛
określone słowo
$ grep -v -w 'def' /usr/include/math.h
Wyszukiwanie wierszy zawierajacych
˛
co najmniej jeden
z podanych ciagów
˛
znaków
$ grep -e 'ifd' -e 'ifn' /usr/include/math.h
dr hab. Andrzej Zbrzezny (IMI AJD)
Środowisko programisty
30 grudnia 2016
5/7
Wyszukiwanie wzorców w plikach tekstowych
Metaznaki
Symbol
.
*
grep
+
+
egrep
+
+
ˆ
+
+
$
+
+
\
[]
+
+
+
+
\( \)
+
-
dr hab. Andrzej Zbrzezny (IMI AJD)
Znaczenie
Dopasowuje dowolny znak
Dopasowuje zero lub wiecej
˛
znaków poprzedzajacych
˛
Dopasowuje poczatek
˛
wiersza lub ciagu
˛ znaków
Dopasowuje koniec wiersza
lub ciagu
˛ znaków
Cytuje nastepny
˛
znak
Dopasowuje jeden z elementów zbioru
Zachowuje wzór w celu wykorzystania w przyszłości
Środowisko programisty
30 grudnia 2016
6/7
Wyszukiwanie wzorców w plikach tekstowych
Metaznaki
Symbol
\n
{ }
grep
+
-
egrep
+
\{ \}
+
-
+
-
+
?
-
+
|
-
+
( )
-
+
dr hab. Andrzej Zbrzezny (IMI AJD)
Znaczenie
Odtwarza określony wzór
Dopasowuje zakres wysta˛
pień
Dopasowuje zakres wysta˛
pień
Dopasowuje jeden lub wiecej
˛
znaków poprzedzajacych
˛
Dopasowuje zero lub jeden
znaków poprzedzajacych
˛
Oddziela od siebie możliwości dopasowania
Grupuje wyrażenia
Środowisko programisty
30 grudnia 2016
7/7