powłoka potok

background image

POWŁOKA

( ang. SHELL) - to program interpretujący polecenia

użytkownika nazywamy powłoką. Powłoka przyjmuje polecenia od
użytkownika, analizuje je i przekazuje jądru życzenia użytkownika.
Bezpośrednio po zgłoszeniu się użytkownika do Systemu UNIX
następuje automatyczne uruchomienie interpretera (inaczej
powłoki), który rozpoczyna pracę na rzecz użytkownika (każdy
użytkownik otrzymuje własny i odrębny egzemplarz procesu
powłoki). Powłoka od razu sygnalizuje na ekranie terminala
( powłoka Bourne’a znakiem $) gotowość przyjęcia polecenia.
Pojawienie się tego znaku rozpoczyna cykl, w jakim pracuje
powłoka.

System operacyjny HP-UX pozwala np. na korzystanie z

następujących powłok:

/bin/sh

- Bourne shell ,powłoka Bourne'a

/bin/csh

- C shell , powłoka C

/bin/ksh

- Korn shell

/bin/rsh

- remote shell

/bin/rksh

- remote Korn Shell

/bin/pam

- Personal Applications Manager - a visual shell

UNIX - powłoka

background image

Powłoka pracuje w cyklu. Na jeden cykl powłoki składają się:

wypisanie

prompt

'u ( znak zachęty -

$

dla powłoki Bourne’a),

czekanie na wprowadzenie tekstu polecenia przez użytkownika,

analiza wiersza polecenia, wyszukiwanie odpowiedniego
programu realizującego to polecenie,

powłoka zleca jądru wykonanie odszukanego programu,

powłoka przyjmuje od jądra odpowiedź, rozpoczyna nowy cykl
od punktu 1)

UNIX - powłoka

Przerwanie powtarzania cykli powłoki może nastąpić jeśli
polecenie użytkownika brzmi:

exit

lub zostanie naciśnięta na klawiaturze kombinacja klawiszy

Ctrl-D

,

co oznacza , że użytkownik nie ma zamiaru kontynuować
wprowadzania dalszych poleceń; powłoka zleca wtedy jądru
zamknięcie sesji użytkownika.

background image

UOGÓLNIONA POSTAĆ POLECEŃ POWŁOKI SYSTEMU UNIX

Wszystkie polecenia rozpoznawane przez powłokę mają
taką samą postać ogólną:

$

nazwapolecenia

argument1 argument2 argument3

...

Konieczne jest podanie nazwy polecenia

nazwapolecenia

,

zaś argumenty mogą wystąpić , lecz nie są konieczne (tzn.

są opcjonalne

). O ile wynika to z konstrukcji polecenia, iż

argumenty powinny się pojawić, zaś użytkownik podał
postać

polecenia

bez

argumentów,

wstawiane

automatycznie wartości domyślne

argumentów

(tzw.

wartości

default’owe

) - zdefiniowane przy opisie polecenia

w dokumentacji technicznej powłoki.

Argumenty polecenia mogą być 2 różnych typów:

opcjami (najczęściej są oznaczane symbolami literowymi˙

poprzedzonymi znakiem "-", np. w poleceniu :

ls

-l

),

nazwami plików.

UNIX - powłoka

background image

UNIX - powłoka - STANDARDOWE
STRUMIENIE

STANDARDOWE STRUMIENIE I PLIKI.

System UNIX został zaprojektowany do przetwarzania informacji
pogrupowanej w pliki.

Prawie każde polecenie powłoki realizuje swoje funkcje na
zasadzie przetwarzania (przekształcania) strumienia informacji
napływającej (w sposób określony przez treść polecenia) w
strumień informacji przetworzonej.

Każdemu procesowi przypisuje się standardowy strumień
wejściowy i standardowy strumień wyjściowy. W celu ułatwienia
pracy użytkownika strumień wejściowy skojarzony jest z
klawiaturą terminala zaś wyjściowy z ekranem terminala.

PROCES

HOST

STDIN

STDERR

STDOUT

TERMINAL

background image

UNIX - powłoka - REDYREKCJA

KOJARZENIE STRUMIENI WEJŚCIA / WYJŚCIA

Jeżeli użytkownik uzna, że standardowe skojarzenie strumieni
wejścia/wyjścia (STDIN, STDOUT, STDERR) nie odpowiada jego
potrzebom, może spowodować skojarzenie alternatywne. Tę
czynność zwykło się nazywać

redyrekcją

.

Polecenie z redyrekcją strumienia STDOUT ma postać:

$

polecenie > plik

lub

$

polecenie >>

plik

PROCES

HOST

STDIN

STDERR

STDOUT

TERMINAL

PLI
K

background image

UNIX - powłoka - REDYREKCJA

Polecenie z redyrekcją strumienia STDIN ma postać:

$

polecenie < plik

PROCES

HOST

STDIN

STDERR

STDOUT

TERMINAL

PLI
K

UWAGA:

JEST

DOPUSZCZALNE

stosowanie

równocześnie

redyrekcji zarówno STDIN jak i STDOUT (kolejność dowolna)

$

polecenie <plikin >plikout

PROCES

HOST

STDIN

STDERR

TERMINAL

plikin

STDOUT

pliko
ut

background image

UNIX - powłoka - REDYREKCJA

KOJARZENIE STRUMIENI WEJŚCIA / WYJŚCIA

Przykład skojarzenia strumienia STDOUT

Polecenie:

cal 9 2000

ma za zadanie
przywołać kalendarz
września roku 2000

STDOUT to jest ekran

REDYREKCJA dla
STDOUT:

cal 9 2000

>

wrzesien2000

ma za zadanie
przywołać kalendarz
września roku 2000 ale
zapisać go w pliku o
nazwie

wrzesien2000

STDOUT to jest plik

Dla sprawdzenia wyświetlamy na ekran terminala zawartość pliku

wrzesien2000

posługując się poleceniem

pg wrzesien2000

lub

poleceniem

more wrzesien2000

pg

?

more?

cal

?

background image

ROZWIĄZANIE2

ROZWIĄZANIE1

UNIX - powłoka - REDYREKCJA

Przykład skojarzenia strumienia STDOUT

Polecenie:

cat

;

STDOUT to ekran zaś STDIN to klawiatura ,

bo nie ma argumentów . Aby zanknąć STDIN w nowej linii
wprowadź EOF (Ctrl-D)

Zadanie1: połącz pliki

komentarz

i

wrzesien2000

w jeden plik

koniec0

, a potem sprawdź wynik

Sprawdzenie zawartości
pliku komentarz,
polecenie:

more komentarz

Redyrekcja:

cat >

komentarz

STDOUT to plik

komentarz

STDIN

to klawiatura
bo nie ma
argumentów .

Rozwiązanie 1. Zastosowanie
polecenia konkatenacji z
redyrekcją STDOUT:

cat plik1 plik2 > plik3

Zadanie2: dopisz swoje imię i nazwisko na koniec pliku

koniec0

,

umieść następnie wynik w pliku koniec1 używając polecenia cat, a
potem sprawdź wynik.

Rozwiązanie 2 - etap 1

Konkatenacja dotyczy
STDOUT ale w trybie append

(dołącz) stąd znak redyrekcji

>>

. STDIN to klawiatura.

Polecenie

more

koniec0

wyświetla zawartość pliku

koniec0

Rozwiązanie 2 - etap 2

Konkatenacja dotyczy
zarówno: STDOUT skojarzone
z

koniec1

STDIN skojarzone z

koniec0

Kolejność argumentów
dowolna !!

Polecenie

more

koniec1

wyświetla zawartość pliku

koniec1

cat?

background image

UNIX - powłoka - zastosowanie potoków i filtrów

Zaawansowany użytkownik bardzo często korzysta z możliwości
powiązania procesów w pewien ciąg procesów.
Proces może być rozumiany jako pewien przekształtnik strumienia
informacji, zgonie z poniższym schematem

Możemy zatem stwierdzić : polecenie

filtruje

informację

napływającą (STDIN) w informację przekształconą (STDOUT) w
sposób określony przez twórcę programu, zgodnie z którym działa
polecenia.

PROCES

STDOUT

STDIN

Przykład. Polecenie wc filtruje informację ze strumienia STDIN
przekazując tę informację w formie przetworzonej (STDOUT).

Polecenie

cal 2000 > alfa

przygotowuje plik alfa z kalendarzem
na rok 2000
Polecenie

wc <alfa

STDIN to zawartość pliku

alfa

STDOUT to ciąg liczb określających
cechy informacji ze strumienia STDIN :
40 linii, 463 wyrazy, 1778 znaków

wc?

background image

UNIX - powłoka - zastosowanie potoków i filtrów

Przykład.
Użytkownik chce szybko się dowiedzieć, ile obiektów znajduje się
we wskazanym katalogu ( w przykładzie jest to katalog /home ).

Polecenie

ls /home > listahome

przygotowuje plik

listahome

zawierający listę obiektów w
katalogu

/home

Polecenie

wc -w <listahome

STDIN to zawartość pliku

listahome

STDOUT to ciąg liczb określających
cechy informacji ze strumienia STDIN,
czyli cechy tekstu zapisanego w pliku

listahome

:

17 wyrazów

Polecenie

more listahome

wykonano tutaj tylko dla sprawdzenia,
wyświetla ono zawartość pliku

listahome

, która jest listą obiektów w

katalogu

/home

.

ls?

wc?

background image

UNIX - powłoka - zastosowanie potoków i filtrów

W poprzednim przykładzie zauważyliśmy pewne niekorzystne
cechy zaproponowanego tam sposobu rozwiązania postawionego
zagadnienia. Pozostał nam śmieć w postaci pliku o nazwie

listahome

w katalogu aktualnym.

Oczywiście można go usunąć odpowiednim poleceniem.
Wniosek jest taki, że aby uzyskać jedną liczbę trzeba wykonać co
najmniej 3 polecenia.

PYTANIE : czy istnieje możliwość skrócenia tej operacji
ODPOWIEDŹ:

TAK

Służy temu

pojęcie potoku

Łączenie 2 procesów polega na ustaleniu, że wyniki
pierwszego procesu kierowane są na wejście drugiego
procesu. W ten sposób połączone 2
procesy tworzą

potok

(ang.

pipeline

).

PROCES

1

STDOUT-

1

STDIN-1

PROCES

2

STDOUT-

2

STDIN-2

Składnia potoku

polecenie1

argumenty |

polecenie2

argumenty

background image

UNIX - powłoka - zastosowanie potoków i filtrów

Przykład potoku.
Użytkownik chce szybko się dowiedzieć, ile obiektów znajduje się
we wskazanym katalogu ( w przykładzie jest to katalog /home ).
Utwórz potok.

ROZWIAZANIE POPRZEDNIE

1) przygotowanie pliku

listahome

2) zliczenie ilości wyrazów w

listahome

3) usunięcie pliku

listahome

ROZWIAZANIE NOWE -

POTOK

STDOUT z polecenia

ls

(listuj) staje się

STDIN polecenia

wc

ls?

wc?

rm?

background image

UNIX - powłoka - zastosowanie potoków i filtrów

Zadanie1
Zlicz, ile linii synchronicznych tty (obsługujących terminale) jest
używanych aktualnie przez użytkowników host’a rat. Wykorzystaj
możliwości tworzenia potoku.

Rozwiązanie

Rozwiązanie1
1. Polecenie

who

produkuje listę użytkowników, którzy

używają choć 1 linię tty, ale jeśli użytkownik używa ich
więcej niż jedną, to i tak wszystkie są prezentowane w
liście.

2. Polecenie

wc -l

zlicza liczbe lini w pliku lub STDIN

3. Wystarczy stworzyć potok

who | wc -l

który poda poszukiwaną wartość

.

who?

background image

Rozwiązanie, etap 1

UNIX - powłoka - zastosowanie potoków i filtrów

Zadanie2
Zlicz, ilu różnych użytkowników aktualnie pracuje w systemie
cyfrowym rat.
Wykorzystaj rozwiązanie zadania 1.

Ciąg dalszy na następnym
przeźroczu

Rozwiązanie2, etap1
1. Potok, który jest rozwiązaniem poprzedniego zadania może

zliczać wielokrotnie jednego użytkownika, gdy używa więcej niż
jednej linii tty.

2. Musimy znaleźć taki filtr, który przed zliczeniem linii tty w liście

przygotowanej przez polecenie who, usunie wielokrotnie
powtarzającą się linię z identyfikatorem użytkownika.

3. Najpierw jednak musimy spowodować wycięcie z każdej linii

listy przygotowanej przez polecenie who tylko identyfikatora
użytkownika. Polecenie:

cut -f1 -d" "

wycina z każdej linii pierwsze pole zakończone delimiterem

spacja

4. Stwórzmy zatem potok

who |

cut -f1 -d" "

i zobaczmy jaki jest

wynik

cut?

who?

background image

Rozwiązanie, etap 2

UNIX - powłoka - zastosowanie potoków i filtrów

Zadanie2
Zlicz, ilu różnych użytkowników aktualnie pracuje w systemie
cyfrowym rat.
Wykorzystaj rozwiązanie zadania 1.

Rozwiązanie2, etap2
5. W celu obliczenia ilości użytkowników, musimy usynąć z

poprzednio przygotowanej listy identyfikatory, które się
powtarzają.

Polecenie:

uniq

spowoduje przepisanie z STDIN na STDOUT tylko tych liniii które

się nie powtarzają.

6. Jednak warunkiem właściwego zadziałania polecenia

uniq

, jest to

by powtarzające się linie następowały po sobie, jeśli mają być
usunięte. W tym celu musimy przesortować STDIN, za pomocą
polecenia

sort -r

(-r odwrotna kolejność sortowania - aby widać

było efekt)

Potok postaci:

who |

cut -f1 -d" "

| sort -r | uniq

daje liste

unikalnych identyfikatorów uzytkowników.

7. Teraz wystarczy na koniec dołączyć filtr zliczajacy linie, i po

zabawie:

who |

cut -f1 -d" "

| sort | uniq | wc -l

cut?

who?

sort? uniq?

background image

Rozwiązanie

UNIX - powłoka - zastosowanie potoków i filtrów

Zadanie3
Sprawdź czy użytkownik o określonym identyfikatorze np.

szczur

jest aktualnie w systemie, i jakie linie tty używa.

Rozwiązanie3
1. Polecenie

who

podaje listę wszystkich aktywnych użytkowników

2. Z tej listy musimy wybrać tylko takie linie gdzie występuje

podany identyfikator użytkownika np.

szczur

Polecenie:

grep " ^szczur "

wytnie z STDIN i przekopiuje na STDOUT linie w których

identyfikator

szczur

pojawi się na początku linii

3. Potok :

who |

grep " ^szczur "

| cut -f1-6

-d" "

jest rozwiązaniem naszego problemu

PYTANIE: dlaczego ostatni filtr w potoku ma takie (

cut -f1-6

-d" "

) a

nie inne

parametry?

grep?

cut?

background image

Rozwiązanie

UNIX - powłoka - zastosowanie potoków i filtrów

Zadanie4
Zlicz, ile plików we katalogu

/home

jest dostępne do zapisu dla

wszystkich użytkowników z grupy

others

Rozwiązanie4
1. Polecenie

ls -l /home

listuje zawartość katalogu

/home

,

Jeśli w polu 9 ( 9-ty znak linii) jest litera

w

to użytkownicy z grupy

others

mają prawo zapisu w odniesieniu do tego pliku.

2. Z tej listy musimy wybrać tylko takie linie, gdzie w polu 9 jest

litera

w

Polecenie:

grep "^.......w"

właśnie to wykona w odniesieniu do

STDIN

3. Na koniec
musimy
zliczyć tylko
te linie
(

wc -l

)

4. Ostatecznie
potok
ma postać:

ls?

grep?

background image

Rozwiązanie

UNIX - powłoka - zastosowanie potoków i filtrów

Zadanie5
Zlicz, ile katalogów w katalogu

/home

to katalogi których

właścicielem (

owner

) jest użytkownik o identyfikatorze

root

Rozwiązanie5
1. Polecenie

ls -l /home

listuje zawartość katalogu

/home

,

Jeśli w polu 1 ( 1-szy znak linii) jest litera

d

to jest to opis katalogu

2. Z tej listy musimy wybrać
tylko takie linie, gdzie w
polu 1 jest litera

d

Potok:

ls -l /home |

grep "^d"

właśnie to wykona

3. Z listy przygotowanej
powyższym potokiem
musimy wybrać tylko takie,
gdzie pojawia się w polu
właściciela nazwa

root

.

Ale wcześniej obetnijmy
listę do pozycji właściciela
filtrem

cut

, i dopiero wybie-

rajmy linie zawierające

root

4. Potok
jest właściwym
rozwiązaniem

Razem 15,

w tym 13
opowiadając
ych
parametrom
zadanym

ls?

grep?

cut?

background image

KONIEC TEMATU

„POTOKI I FILTRY”

KONIEC POKAZU

background image

Polecenie wypisuje zawartość pliku dzieląc go na kolejne

ekrany. Rozmiar ekranu (ilość linii) czytany jest przez

system z bazy dostępnych terminali. Jeśli nie jest to

możliwe system przyjmuje że terminal ma 24 linie. Każdy

wypisany pełny ekran kończony jest linią ze znakiem

:

(dwukropek), jeśli nie użyto opcji

-p

. Polecenie

pg

ma

bardzo rozbudowany system wewnętrznych poleceń.

Między innymi: naciśnięcie klawisza

enter

powoduje

wypisanie kolejnej linii, sekwencja klawiszy

spacja

enter

wypisuje kolejny ekran,

5

enter

wypisuje zawartość pliku od

linii 5,

q

enter

przerywa wypisywanie,

h

enter

wypisuje

skróconą pomoc (help)

.

Składnia:

pg

[-nr]

[

-p

tekst]

[-cefns]

[ +numer ] [ +wzorzec ] [

plik ...]

pg

- wyświetl zawartość pliku tekstowego

z podziałem na ekrany

Wybrane Opcje:

-e

brak zatrzymywania po wyświetleniu pliku (gdy wypisywana

jest większa
ilość plików),

-s

tekst ustawiony przez

-p tekst

będzie podświetlany,

Parametry:

-nr

ustawia długość strony na

nr

linii (standardowo ilość

linii

terminalu),

-p

tekst

tekst kończący każdą

wypisaną stronę

(standardowo

:

) ,

+numer

wypisywanie od linii o numerze

numer

,

+wzorzec

rozpoczyna wypisywanie od linii w której znaleziono

ciąg

znaków określony przez

wzorzec

,

plik ...

nazwy wyświetlanych plików.

ESC

background image

Polecenie wypisuje zawartość pliku dzieląc go na kolejne

ekrany. Rozmiar ekranu (ilość linii) czytany jest przez

system z bazy dostępnych terminali. Jeśli nie jest to

możliwe system przyjmuje że terminal ma 24 linie.

Każdy wypisany pełny ekran kończony jest linią z

tekstem

--More--

oraz informacją ile tekstu już wypisano.

Polecenie

more

ma bardzo rozbudowany system

wewnętrznych poleceń. Między innymi: naciśnięcie

klawisza

enter

powoduje wypisanie kolejnej linii,

spacji

kolejnego ekranu, klawisza

q

przerywa wypisywanie a

klawisza

h

wypisuje skróconą pomoc (help)

.

Składnia:

more

[-n]

[-cdflsu]

[ +numer ] [ +wzorzec ]

[ plik ...]

more

- wyświetl zawartość pliku

tekstowego
z podziałem na ekrany

Wybrane Opcje:

-d

wypisuje dodatkowo po każdej stronie tekst

press space to

continue ,
q to quit

(standardowy tekst

--More-- x%

),

-s

usuwa wielokrotnie występujące linie puste zostawiając jedną,

Argumenty:

-n

ustawia długość strony na

n

linii (standardowo ilość

linii

terminalu),

+numer

wypisywanie od linii o numerze

numer

,

+wzorzec

rozpoczyna wypisywanie 2 linie przed linią w której

znaleziono

ciąg znaków określony przez

wzorzec

,

plik ...

nazwy wyświetlanych plików.

ESC

background image

Polecenie wypisuje kalendarz dla wskazanego przez
argumenty miesiąca lub całego roku. Przy braku
argumentów wypisywany jest kalendarz dla aktualnego
miesiąca. Rok musi zawierać się w przedziale 1-9999.
Polecenie zakłada że każdy rok rozpoczynał się w
styczniu, chociaż nie jest to prawdą historyczną.

Składnia:

cal

[ [ month ] year ]

cal

- wypisz kalendarz

Argumenty:

month

- numer miesiąca w roku,

year

- wybrany rok.

Przykład:

polecenie

cal 9 1939

wypisuje wrzesień 1939 roku

September 1939

S M Tu W Th F S

1 2

3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30

ESC

background image

ESC

Polecenie

czyta kolejne pliki z listy

file ...

i wypisuje w

postaci jednego pliku na standardowym wyjściu (zwykle
ekran terminala).
Jeśli lista

file...

jest pusta,

cat

czyta ze standardowego pliku

wejściowego (zwykle klawiatura).

cat

– połącz (konkatenuj) i wyświetlaj pliki

Składnia

-

cat

[-s] [-u] [-v] [-t] [-e]

file ...

Opcje:

-s

brak komunikatów o nieistnieniu plików,

-u

brak buforowania operacji we/wy,

-v

znaki niewidoczne (np. kontrolne) poza pewnymi

wyjątkami np. tabulator, pisane są w postaci
^n, gdzie n znak z zakresu (100-137 oct),

-t

znak tabulatora

pisan

y w postaci ^I

(opcja dostępna tylko łącznie z opcją

-v

),

-e

znak $ dopisywany na końcu każdej linii

(opcja dostępna tylko łącznie z opcją

-v

).

Argumenty:

file

- lista łączonych plików.

background image

ESC

Polecenie zlicza ilość wierszy, słów lub znaków we

wskazanych plikach lub na standardowym wejściu. Wynik

działania wypisywany jest na standardowe wyjście. Słowo

wg. tego polecenia to ciąg znaków zakończony spacją,

tabulatorem lub znakiem nowej linii. Opcje mogą być

stosowane łącznie. Standardowo polecenie zakłada że

włączone są wszystkie opcje (

-lwc

).

Składnia:

wc

[-lwc]

[name]

wc

- zlicz słowa, linie lub znaki

Opcje:

-l

zliczana jest ilość wierszy,

-w

zliczana jest ilość słów

,

-c

zliczana jest ilość znaków.

Argumenty:

name

nazwa pliku.

background image

Składnia

ls

[-abcdfgilmnopqrstuxACFHLR1]

[names]

ls

- wypisanie zawartości katalogów

Polecenie wypisuje zawartość wszystkich katalogów
wymienionych w liście katalogów

names

. Jeśli nie

występuje argument

names

wypisywana jest

zawartość katalogu aktualnego. Standardowo
wypisywane są wszystkie pliki poza tymi których
nazwa rozpoczyna się od

.

lub

..

(pliki ukryte).

Wybrane Opcje:

-a

wypisuje wszystkie pliki, również ukryte,

-l

pełna informacja o plikach: typ pliku, prawa dostępu,

ilość linków, właściciel, grupa, rozmiar, czas
modyfikacji oraz nazwa,

-p

dopisanie znaku

/

do nazwy katalogów,

-r

wypisanie w kolejności od najstarszego do

najmłodszego,

-t

wypisanie w kolejności zależnej od czasu

modyfikacji(pierwszy

najwcześniejszy,

-R

wypisywanie rekurencyjne łącznie z zawartością

podkatalogów

-1

wypisywanie w jednej kolumnie

Argumenty:

names

lista katalogów

Polecenie

ls -alt

wypisuje pełną informację o wszystkich

plikach katalogu aktualnego (łącznie z plikami ukrytymi) w
kolejności zależnej od czasu modyfikacji .

ESC

background image

ESC

Polecenie, w zależności od użytych opcji, może wyświetlić:
nazwę użytkownika, linię terminala, czas zgłoszenia się do
systemu (logowania), czas jaki upłynął od ostatniej
aktywności linii terminala oraz systemowy numer (process
ID) interpretera poleceń (shell) dla każdego użytkownika
obecnie pracującego w systemie. Informacja ta czytana jest
z pliku /etc/wtmp lub z pliku

file

jeśli występuje ten

argument.

who

- kto jest w systemie

Składnia

-

who

[-muTlHqpdbrtasAcR]

[file]

who am i

Wybrane Opcje:

-m

równoważna poleceniu

who am

i

lub

who am I

,

-T

pełna informacja łącznie ze stanem terminala,

numerem procesu, nazwą komputera lokalnego itp.

-H

wypisywane są dodatkowo nagłówki kolumn,

-R

wypisywana jest dodatkowo nazwa komputera lokalnego ,

Argumenty

:

file

- przeglądany jest plik

file

a nie

standardowy /etc/wtmp

$

who

-H

NAME

LINE

TIME

adam

ttyp3

May 3 08:23

marcin

console

May 3 08:08

szczur

ttyp4

May 4 12:16

$

background image

ESC

Polecenie wycina wskazane kolumny pól każdej liki
pliku. Wynik działania polecenia wypisywany jest na
standardowe wyjście. Pole może mieć stałą szerokość
(określoną ilość znaków) lub może być ograniczone
wybranym znakiem zwanym delimiterem.
Standardowym delimiterem jest tabulator.

Jeśli nie występuje argument

file...

czytane są znaki ze

standardowego wejścia.

Opcje:

-c

każdy znak jest polem,

-f

pole to ciąg znaków oddzielony delimiterem

(standardowo tabulatorem),

-d

ustawianie znaku delimitera,

-s

opuszczanie linii bez znaku delimitera.

Argumenty:

list

oddzielona przecinkami lista numerów

wycinanych

pól np. 1,4,6-9,12- oznacza: pole pierwsze,

czwarte,

od szóstego do dziewiątego oraz od 12 do

końca linii,

file...

lista nazw plików,

char

dowolny znak lub znaki specjalne i spacja

w cudysłowach .

cut

- wytnij wybrane pola z wszystkich

linii pliku

Składnia:

cut

-c

list [file ...]

cut

-f

list

[-d

char

]

[-s]

[file ...]

background image

ESC

Składnia:

sort

[-cmu]

[

-o

out]

[bdfilnrM]

[file ...]

sort

- sortuj i/lub scal pliki

Polecenie sortuje wspólnie wszystkie linie wskazanych przez
argumenty polecenia plików tekstowych. Jeśli pliki te nie
zostaną wyszczególnione, sortowana jest informacja za
standardowego wejścia. Wynik polecenia wypisywany jest
na standardowe wyjście lub do wskazanego pliku.

Argumenty:

out

- nazwa pliku po przesortowaniu,

file ...

- lista nazw plików sortowanych,

Wybrane Opcje:

-c

- kontrola czy plik wejściowy

file

jest już

przesortowany.

Jeśli tak, nie zostanie utworzony plik wynikowy

out

.

-m

- nie sortuje, tylko scala pliki z listy,

-u

- usuwa kopie linii (zostawia tylko oryginał),

-o

- wynik polecenia pisany do pliku o nazwie

out

.

background image

ESC

uniq

- znajdź powtarzające się linie

pliku

Składnia:

uniq

[-udc

[+n][-n]

]

[input

[output]]

...

Polecenie czyta standardowe wejście lub wskazany plik
tekstowy i porównuje sąsiadujące linie. W normalnym
przypadku, gdy nie użyto opcji, usuwane są wszystkie
kolejne kopie linii. Wynik wypisywany jest na standardowe
wyjście lub do wskazanego pliku.

Argumenty:

input

- nazwa sprawdzanego pliku,

onput

- nazwa pliku wynikowego,

+n

- liczba określająca ile znaków na

początku

każdej linii zostanie zignorowanych,

-n

- liczba określająca ile pól na początku

każdej

linii zostanie zignorowanych. Pole to ciąg
znaków oddzielony spacjami lub

tabulatorami.

Opcje:

-u

- w pliku wynikowym tylko nie

powtarzające się linie,

-d

- w pliku wynikowym tylko powtarzające się linie

(pisane

jednokrotnie),

-c

- dopisywanie ilości powtórzeń linii.

background image

ESC

Składnia:

grep

[-cefilnqsvx]

wzorzec [plik ...]

grep

- wypisz wiersze pliku w których

występuje wzorzec

Polecenie przegląda standardowe wejście lub pliki

plik...

poszukując linii w których występuje

wzorzec

. Domyślnie,

linie zawierające wzorzec kopiowane są na standardowe

wyjście. Dowolny ciąg znaków, będący

wzorcem

, w

przypadku gdy zawiera znaki specjalne powłoki systemu

Unix (rówież spację), należy zamknąć apostrofami.

Wybrane Opcje:

-c

wypisywana jest tylko ilość wierszy w których znaleziono

wzorzec

,

-i

nie rozróżnia

małych, dużych liter,

-l

wypisywane są tylko nazwy plików w których znaleziono

wzorzec

,

-n

dopisywane są numery wierszy w których znaleziono

wzorzec

,

-v

wypisywane są wiersze w których nie znaleziono

wzorca

,

Argumenty:

wzorzec

poszukiwany ciąg znaków,

plik

przeszukiwany plik,

background image

ESC

Polecenie usuwa wejścia (entries) dla jednego lub wielu
plików z katalogu. Jeśli wejście (entry) zawiera ostatni link
do pliku, plik ten też jest usuwany. Użytkownik musi
posiadać prawa do pisania i egzekucji w katalogu z którego
usuwane są plik, ale nie musi mieć takich praw dla
usuwanego pliku. W przypadku gdy użytkownik nie ma
prawa do modyfikacji pliku, na standardowe wyjście
wysyłane jest zapytanie o potwierdzenie operacji.

rm

- usuń pliki lub katalogi

Składnia

-

rm

[-f | -i]

[-Rr]

file ...

Opcje:

-f

uniemożl

i

wia pojawienie się zapytań powłoki

o potwierdzenie operacji usuwania,

-i

wymusza pojawienie się zapytań powłoki

o potwierdzenie

operacji usuwania,

-R

rekurencyjne usuwanie z katalogów i podkatalogów

-r

analogicznie jak

-R.

Argumenty:

file...

-

lista usuwanych plików (oraz

katalogów jeśli

używana jest opcja

-R

lub

-r .


Document Outline


Wyszukiwarka

Podobne podstrony:
Ćw 3 wytwarzanie powłok metalicznych na podłożu metalicznym i niemetalicznym
Buczkowski Czarny potok
5 Kolejność ruchów do masażu powłok i narządów jamy brzusznej
8 Spawalnicze metody nakładania powłok
06 Powloki konwersyjne i barwienie metali
PORÓWNANIE WYBRANYCH TEORII ANALIZY WYTRZYMAŁOŚCIOWEJ KOMPOZYTOWYCH PŁYT I POWŁOK
Nanoszenie powlok id 313546 Nieznany
Badanie właściwości aplikacyjnych i eksploatacyjnych powłok polimerowych - sprawozdanie, metody bada
powłoki natryskiwane, MBiM
007 Podstawowe rodzaje wykończeń i powłok ochronnych
ORGANIZM CZŁOWIEKA W LICZBACH, Sprawdziany i Odpowiedzi gimnazjum, Sprawdziany z odpowiedziami z bio
Wzor laplacea dla powlok
powloki
Powłoki ochronne
21 odnawianie powłok ochronnych NXNLJBZXDCSRRJAO27O2VEQRFXDJXAJ32FSLLFY
Praca licencjacka Czarny potok i Góry nad czarnym morzem
CZARNY POTOK buczkowski

więcej podobnych podstron