06 przetwarzanie teksoweid 6373 Nieznany (2)

background image

Unix - 'przetwarzanie tekstowe'

'tedd' T. K dzierski

str. 1/1 (ost. akt.: 14-02-05)

Wymagania.we: przerobienie działu 'pliki i kartoteki', przerobienie działu 'edytory', przerobienie działu ‘procesy’

'Przetwarzanie tekstowe'

Tryb 'tekstowy', w dobie coraz powszechniejszych interface'ów graficznych mo e wydawa si 'krokiem wstecz'. Ci gle jednak komendy 'przetwarzania

tekstowego' pozwalaj na wykonanie operacji, które nie s dost pne za pomoc standardowych, graficznych narz dzi - w dodatku działaj nieporównywalnie

szybciej. Najcz ciej cytowanym przykładem 'tekstowego przetwarzania' informacji, niemo liwego do zrealizowania za pomoc narz dzi dostarczanych przez

rodowisko graficzne s zadania typu 'znale wszystkie pliki nale ce do u ytkownika "nowak", modyfikowane podczas ostatnich dwóch tygodni,

posiadaj ce rozmiar wi kszy ni 10 MB oraz b d ce plikami wykonywalnymi' lub 'znale wszystkie pliki, które maj niezdefiniowanego wła ciciela' (sytuacja

taka mo e mie miejsce po włamaniu do naszego systemu lub po usuni ciu definicji u ytkownika - bez usuwania jego plików). Pod koniec tego działu

b dziemy w stanie wykona takie operacje.

znajd linie w których wyst puje pewien ła cuch znaków

grep parametry tekst wzornik

... komenda | grep parametry tekst | ... komenda

Komenda

grep

pozwala na wyszukanie - w informacji tekstowej - wszystkich linii zawieraj cej

tekst

. Dwa - najcz ciej u ywane - parametry tej komendy, to:

background image

Unix - 'przetwarzanie tekstowe'

'tedd' T. K dzierski

str. 2/2 (ost. akt.: 14-02-05)

-i

wyszukuj tekst uto samiaj c du e i małe litery ('

ignore case

')

-v

wyszukuj linie

nie

zawieraj ce tekstu '

tekst

'

S dz , e najpro ciej b dzie wyja ni 'u yteczno ' tej komendy na przykładach:

W którym z plików, którego nazwa ko czy si na 'txt' masz zapisane numery totolotka na nast pny tydzie . Numery s zapisane po słowie 'lotek'. Znajd

te numery:

grep -i lotek *txt

Chcesz wy wietli opis definicji u ytkownika 'nowak', pami taj c e opisy u ytkowników znajduj si w pliku /etc/passwd

grep -i nowak /etc/passwd

Znajd wszystkie procesy u ytkownika 'nowak', uruchomione na elfie, których nazwy zawieraj w sobie ła cuch znaków 'prog':

ps -Af | grep nowak | grep prog

(mo emy

krotnie

u ywa grepa do filtrowania informacji tekstowej)

Wy wietl informacje o wszystkich bie co działaj cych procesach z wyj tkiem procesów roota:

ps -Af | grep -v root | less

background image

Unix - 'przetwarzanie tekstowe'

'tedd' T. K dzierski

str. 3/3 (ost. akt.: 14-02-05)

W którym z plików ródłowych zawieraj cych programy w j zyku C (ich nazwy ko cz si na '

c

') zapisałe definicj funkcji

Alfa

. Znajd plik,

w którym znajduje si ta definicja

Kolejna komenda - nie wiem dlaczego - zwykle powodowała 'o ywienie' w czasie zaj ...

policz ilo znaków, słów i linii w tek cie

wc [-c] [-w] [-l] wzornik

... komenda | wc [-c] [-w] [-l] | ... komenda

Komenda

wc

('

word count

') - u yta bez adnych parametrów - liczy ilo znaków, wyrazów i linii w tek cie. U ycie parametrów pozwala 'ograniczy ' to, co

policzy komanda

wc

:

-c

policz ilo znaków w tek cie

-w policz ilo słów w tek cie

-l

policz ilo linii w tek cie

Zastosowanie?

policz ilo zdefiniowanych u ytkowników w Twoim systemie Unixowym:

cat /etc/passwd | wc -l

background image

Unix - 'przetwarzanie tekstowe'

'tedd' T. K dzierski

str. 4/4 (ost. akt.: 14-02-05)

policz ilo procesów uruchomionych przez u ytkownika 'nowak'

ps -Af | grep nowak | wc -l

Komenda

wc

, w poł czeniu z

grep

em pozwala zlicza ilo wyst pie procesów, plików, danych konfiguracyjnych - wszystkiego, co mo emy wydzieli za

pomoc ła cucha znaków.

policz ilo plików ródłowych, zawieraj cych programy ródłowe w j zyku C (zakładamy, e nazwy tych plików ko cz si na

.c), zawartych

we wszystkich podkartotekach bie cej kartoteki

sortuj dane tekstowe

sort [ parametry ] wzornik

... komenda | sort [ parametry ] | ... komenda

Najcz ciej u ywane parametry to:

-k

liczba

sortuj dane według

liczba

pola. Pola s - standardowo - ograniczane przez znaki spacji i tabluacji

-n

kolumna według której odbywa si sortowanie jest numeryczna. Standardowo

sort

traktuje sortowane kolumny jako pola znakowe. Pola

background image

Unix - 'przetwarzanie tekstowe'

'tedd' T. K dzierski

str. 5/5 (ost. akt.: 14-02-05)

numeryczne, potraktowane jako pola znakowe zostan uporz dkowane według kodów ASCII (1, 20, 2, ...). U ycie parametru

-n

spowoduje

poprawne posortowanie kolumny numerycznej

-t

znak

redefiniuje znak oddzielaj cy pola w sortowanym tek cie

-r

zmie kolejno sortowania. Standardowo

sort

porz dkuje dane rosn co -

-r

odwraca kolejno sortowania

Wy wietl nazwy wszystkich procesów u ytkownika 'nowak', posortowane według identyfikatorów procesów:

ps -Af | grep nowak | sort -k 2 -n | less

Cz sto zachodzi potrzeba wy wietlenia pocz tku lub ko ca pliku:

wy wietl pocz tkowe linie z pliku:

head [-liczba] wzornik

... | head [-liczba] | ...

wy wietl ko cowe linie z pliku:

tail [-liczba] [-f] wzornik

... | tail [-liczba] [-f] | ...

Je eli nie podamy liczby linii -

head

i

tail

wy wietlaj - odpowiednio - 10 pocz tkowych lub 10 ko cowych linii.

background image

Unix - 'przetwarzanie tekstowe'

'tedd' T. K dzierski

str. 6/6 (ost. akt.: 14-02-05)

wy wietl nazwy siedmiu plików z bie cej kartoteki o najwi kszym rozmiarze:

ls -la | sort -k 5 -n -r | head -7

Parametr

-f

komendy

tail

nadaje si szczególnie do ledzenia zmian w logach. Jego u ycie spowoduje wy wietlenie okre lonej ilo ci ko cowych linii,

tail

b dzie nast pnie ledził zawarto pliku, którego nazwa jest jego parametrem. Je eli w pliku pojawi si nowe linie, dopisane na ko cu pliku - zostan

wy wietlone przez

tail

.

wy wietlaj log systemowy na elfie:

tail -f /var/adm/SYSLOG

Wyszukiwanie plików - '

find

'

Komenda ‘

find

’ słu y do wyszukiwania plików. Potrafi wi cej ni inne komendy wyszukiwania – na odnalezionych plikach mo na wykona – w zasadzie

dowoln – operacj . Składnia komendy

find

wygl da nast puj co:

znajd pliki, wykonaj na nich okre lon operacj

find kartoteka_pocz tkowa parametry_wyszukiwania akcja

background image

Unix - 'przetwarzanie tekstowe'

'tedd' T. K dzierski

str. 7/7 (ost. akt.: 14-02-05)

Poszczególne składowe komendy

find

maj nast puj ce znaczenie:

kartoteka_pocz tkowa

kartoteka od której komenda

find

zaczyna przeszukiwanie kodkartotek. Komenda

find

zawsze przeszukuje drzewo kartotek, pocz wszy od kartoteki której

nazwa pojawi si jako

kartoteka_pocz tkowa

.

Je eli ‘nieodpowiednio’ dobierzemy kartotek pocz tkow , komenda

find

mo e si bardzo długo wykonywa . W Unixie otoczenie sieciowe i

urz dzenia s ‘przesłoni te’ drzewem kartotek. Oznacza to, e dysk sieciowy jest w tym systemie widziany jako podkartoteka. To samo dotyczy

partycji dyskowych (sposób doł czania dysków sieciowych i partycji do drzewa kartotek poznamy w drugiej cz ci zaj ). Je eli b dziemy mieli tak

‘podpi te’ dyski sieciowe lub kartoteki to szukanie plików w sytuacji, kiedy kartotek pocz tkow w komendzie

find

b dzie kartoteka korzenia

przeszuka wszystkie doł czone dyski sieciowe i partycje. U ycie parametru

–xdev

‘wyłaczy’ przeszukiwanie tak doł czonych dysków sieciowych i

partycji

parametry_wyszukiwania

okre laj

czego ma szuka komenda

find

. Najcz ciej u ywane parametry wyszukiwania to:

-name

fname

szukaj pliku którego nazwa pasuje do

fname

. Je eli chcemy u y wzornika jako

fname

– musimy go uj w cudzysłowy ( w

przeciwnym przypadku zostały zamieniony – przez shella – w nazwy plików pasuj ce do tego wzornika. Tylko pierwsza z tak

rozwini tych nazw zostałaby potraktowana jako skł dnik parametru –name – posoztałe były traktowane jako bł dne składowe

komendy

find

.)

-perm

prawa_dost

-perm +

prawa_dost

-perm –

prawa_dost

szukamy plików do których mamy okre lone prawa dost pu (

prawa_dost

). Prawa dost pu mog by podane w postaci liczby

oktalnej lub w postaci symbolicznej – tak jak podajemy je w komendzie

chmod

. Je eli podamy prawa dost pu bez adnego znaku –

szukamy plików do których mamy

dokładnie takie prawa dost pu jak podane. ‘

+prawa_dost pu

’ oznacza, e wszystkie z podanych

praw dost pu musimy mie zagwarantowane (ale – by mo e – nie s to wszystkie nasze prawa dost pu do plików).

-prawa_dost pu’

oznacza e mamy mie jakiekolwiek z wymienionych praw dost pu.

-type d

szukany obiekt jest – odpowiednio:

background image

Unix - 'przetwarzanie tekstowe'

'tedd' T. K dzierski

str. 8/8 (ost. akt.: 14-02-05)

-type l

-type f

-type d

kartotek

-type l

linkiem

-type f

plikiem

-user

name

szukany obiekt nale y do u ytkownika o podanej nazwie lub numerze (identyfikatorze u ytkownika)

-group

name

szukany obiekt nale y do u ytkownika b d cego członkiem grupy o podanej nazwie (nazwy grup w pliku

/etc/group)

-nouser

szukamy obiektów które nie nale do adnego ze zdefiniowanych u ytkowników. Tego parametru u ywamy np. szukaj c plików i

kartotek które pozostały w systemie po u ytkowniku którego usun li my z systemu.

-nogroup

szukamy obiektów, które nale do nie zdefiniowanej w systemie grupy u ytkowników (usun li my grup z /etc/group ale w systemie

pozostały jeszcze pliki, których ‘grupowa przynale no ’ wskazuje na t usuni ta grup )

-size

liczba

bloków

-size

liczba

c

znaków

-size

liczba

k

KB

szukamy plików o rozmiarze równym co najmniej

liczba

bloków (w wi kszo ci systemów Unixowych blok ma 512 bajtów). Je eli po

liczbie

wpiszemy c

liczba

jest traktowana jako ilo znaków. k oznacza, e

liczba

to ilo KB.

-mtime

liczba

-mtime +

liczba

-mtime –

liczba

szukamy obiektów które były modyfikowane

liczba

dni temu. ‘

liczba

’ oznacza, e szukany obiekt był modyfikowany pomi dzy

liczba

*24 (

liczba-1

)*24 godzin , ‘

+liczba

’ – obiekt był modyfikowany wcze niej ni

liczba

*24 godzin temu, ‘

-liczba

’ – obiekt był

modyfikowany pó niej ni

liczba

*24 godzin temu

-newer

fname

szukamy obiektów modyfikowanych pó niej ni plik o nazwie

fname

-xdev

je eli zaczynamy przeszukiwanie od jakiej kartoteki do której – jako podkartoteki – doł czone s dyski sieciowe lub dodatkowe

partycje dysków, dodatkowe urz dzenia (np. CD ROM) –

find

nie b dzie przeszukiwał tych podkartotek

Je eli u yjemy kilku parametrów_wyszukiwania komenda

find

potraktuje je jako koniunkcj (and) warunków według których szukane b d pliki. Dodatkowo

mo emy ł czy parametry wyszukiwania w grupy, u ywaj c konstrukcji

\( warunek

1

operator

warunek

2

... \) – operatorami mog by :

-a

koniunkcja (

and)

background image

Unix - 'przetwarzanie tekstowe'

'tedd' T. K dzierski

str. 9/9 (ost. akt.: 14-02-05)

-o

alternatywa (or)

!

negacja (jak w j zyku C)

akcja

Ta grupa parametrów okre la, co komenda

find

ma zrobi ze znalezionymi obiektami. Oczywi cie prawa dost pu – ograniczaj ce operacje jakie mo emy

wykona na znalezionych obiektach działaj normalnie – nie do wszystkich operacji b dziemy mieli ‘prawa wykonania’. Najcz ciej wykonywane akcje:

-print

wylistuj pełn cie k dost pu do znalezionego obiektu

-exec komenda ...{} ... \; wykonaj podan komend na znalezionych obiektach. W ‘tre ci’ komendy dwa nawiasy klamrowe {} zostan zast pione przez

pełn cie k dost pu do znalezionego obiektu. Komenda musi ko czy si znakami

\; Komenda jest wykonywana

bezwarunkowo (bez jakiegokolwiek pytania o potwierdzenie tego, czy komenda ma by wykonana)

-ok. komenda ... {} ... \;

działa dokładnie tak jak

–exec ale wymaga potwierdzenia.

find

wy wietla najpierw komend , która ma by wykonana i pyta, czy

j wykona . Je eli u ytkownik naci nie y a po nim Enter – komenda zostanie wykonana. Dowolny inny znak spowoduje

zignorowanie komendy i kontynuacj wyszukiwania. Konstrukcje

{} i \; działaj tak samo jak w komendzie –exec.

Przykłady:

znajd wszystkie obiekty nale ce do u ytkownika ‘nowak’

find / -user nowak –print

znajd wszystkie pliki których wła ciciele zostali usuni ci z systemu a ich pliki zawierały w nazwach ‘doom’ – usu znalezione pliki

find / -nouser –type f –name „*doom*” –ok rm {} \;

background image

Unix - 'przetwarzanie tekstowe'

'tedd' T. K dzierski

str. 10/10 (ost. akt.: 14-02-05)

Test.wy:

policz ilo plików znajduj cych si w systemie, które nie maj swoich wła cicieli

znajd i skasuj wszystkie własne pliki o nazwie

core

(takie pliki powstaj cz sto jako ‘zrzut pami ci’ po niepoprawnym zako czeniu

programu)

znajd i wylistuj cie k dost pu i zawarto wszystkich plików których jeste wła cicielem, zmodyfikowanych w czasie ostatniego

tygodnia. Listuj informacje o plikach ze stronicowaniem (

less

)

Nast pny rozdział

:

awk.doc

Koniec


Wyszukiwarka

Podobne podstrony:
pkt 06 ST id 360232 Nieznany
06 Stosowanie przepisow prawa i Nieznany
06 Sporzadzanie ciasta pszenneg Nieznany (3)
06 zarzadzanie czasemid 6452 Nieznany (2)
06 Przestrzeganie przepisow bez Nieznany (2)
82 Nw 06 Gietarka id 47395 Nieznany
31 przetwarzanie zdjec cyfrowyc Nieznany (2)
Lab 06 Instrukcje sterujace id Nieznany
2wyklad 06 analyzer id 32779 Nieznany (2)
06 Analizowanie ukladow elektry Nieznany (2)
06 Cena notid 6269 Nieznany (2)
egzamin 06 2006 id 151724 Nieznany
dietetyka 11 06 2011 id 136280 Nieznany
egzamin 06 2010 1 id 151726 Nieznany
06 Przygotowanie surowcow i pol Nieznany (2)
06 Atom wodoruid 6249 Nieznany (2)
06 Przetwarzanie i rejestrowanie sygnału audio analogowego

więcej podobnych podstron