Stáhnout prezentaci
Prezentace se nahrává, počkejte prosím
1
Príkazy pre prácu s textom
Unix Príkazy pre prácu s textom
2
Príkazy pre prácu s textom:
sed awk colrm column cut paste tr sort Unix - príkazy pre prácu s textom (Tomáš Karas)
3
Unix - príkazy pre prácu s textom (Tomáš Karas)
Úvod unix - mnoho príkazov: vstup - štandardny vstup vystup - štandardný výstup Ako uchovať text zo štandardného výstupu ? presmerovať výstup do súboru ( > ) Ako dostať obsah súboru na vstup programu ? presmerovať vstup programu ( < ) Unix - príkazy pre prácu s textom (Tomáš Karas)
4
Unix - príkazy pre prácu s textom (Tomáš Karas)
Úvod Ako spojiť výstup jedného programu zo vstupom druhého programu ? dátovodom (pipe, rúra, znak | ) použitím dočasného súboru Dočasné súbory: vytvárať v adresári /tmp v názve použiť znak $$ - význam pid jednoznačný názov v systéme pred skončením vymazať Unix - príkazy pre prácu s textom (Tomáš Karas)
5
Unix - príkazy pre prácu s textom (Tomáš Karas)
Úvod Premenné: uloženie výstupu príkazu do premennej (set,``) set meno = `ls -l` sprístupnenie obsahu premennej ($) vypísanie obsahu premennej (echo + sprístupnenie) echo $meno Unix - príkazy pre prácu s textom (Tomáš Karas)
6
Unix - príkazy pre prácu s textom (Tomáš Karas)
Príkaz colrm zruší vybrané stĺpce z textu vstupom je štandardný vstup výstupom je štandardný výstup Unix - príkazy pre prácu s textom (Tomáš Karas)
7
Unix - príkazy pre prácu s textom (Tomáš Karas)
Príkaz colrm Použitie: colrm [štart [stop]] stĺpcom sa chápe jeden znak na riadku číslovanie stĺpcov sa začína od 1 štart - vyjadruje prvý stĺpec, ktorý sa má zrušiť stop - vyjadruje posledný stĺpec, ktorý sa má zrušiť ak nie je pozícia stop zadaná tak sa pokračuje až do konca riadku Unix - príkazy pre prácu s textom (Tomáš Karas)
8
Unix - príkazy pre prácu s textom (Tomáš Karas)
Príklad colrm >colrm 3 5 126789 <eof> >colrm 2 123456 1 > ?: Vysvetlivky: > - znak, ktorým sa hlási operačný systém (prompt) rovné písmená - text zadávaný užívateľom šikmé písmená - výstup programu <eof> - príznak konca súboru (na niektorých termináloch Ctrl D) Unix - príkazy pre prácu s textom (Tomáš Karas)
9
Unix - príkazy pre prácu s textom (Tomáš Karas)
Príkaz column naformátuje vstupný text do stĺpcov vstupom je štandardný vstup alebo súbor zadaný ako argument Unix - príkazy pre prácu s textom (Tomáš Karas)
10
Unix - príkazy pre prácu s textom (Tomáš Karas)
Príkaz column Použitie: column [-tx] [-c col] [-s sep] [súbor...] -t vytvorí tabuľku (vyrovná stĺpce) -x zlúči stĺpce z viacerých riadkov -c col naformátuje výstup na šírku col stĺpcov -s sep predpíše znaky, ktoré budú použité na oddelenie stĺpcov pri parametri -t Unix - príkazy pre prácu s textom (Tomáš Karas)
11
Unix - príkazy pre prácu s textom (Tomáš Karas)
Príklad column >column -t miso jano fero maja jozo <eof> > ?: Vysvetlivky: > - znak, ktorým sa hlási operačný systém rovné písmená - text zadávaný užívateľom šikmé písmená - výstup programu <eof> - príznak konca súboru Unix - príkazy pre prácu s textom (Tomáš Karas)
12
Unix - príkazy pre prácu s textom (Tomáš Karas)
Príkaz cut vyberie zvolené stĺpce z textu vstupom je štandardný vstup alebo súbor Unix - príkazy pre prácu s textom (Tomáš Karas)
13
Unix - príkazy pre prácu s textom (Tomáš Karas)
Príkaz cut Použitie: cut -c list [súbor...] cut -f list [-d delim] [-s] [súbor...] list špecifikuje stĺpce, ktoré sa majú vybrať -c stĺpce sú chápané ako jednotlivé znaky -f stĺpce sú chápané ako znaky oddelené tabulátormi -d delim určuje oddeľovací znak, ktorý sa použije namiesto tabulátora Unix - príkazy pre prácu s textom (Tomáš Karas)
14
Unix - príkazy pre prácu s textom (Tomáš Karas)
Príkaz cut -s riadky neobsahujúce oddeľovací znak zostanú bez zmeny Unix - príkazy pre prácu s textom (Tomáš Karas)
15
Unix - príkazy pre prácu s textom (Tomáš Karas)
Príklad cut cut -c 2,4,7 247 <eof> > ?: Vysvetlivky: > - znak, ktorým sa hlási operačný systém rovné písmená - text zadávaný užívateľom šikmé písmená - výstup programu <eof> - príznak konca súboru Unix - príkazy pre prácu s textom (Tomáš Karas)
16
Unix - príkazy pre prácu s textom (Tomáš Karas)
Príkaz paste spojí riadky súborov vstupom sú súbory alebo štandardný vstup Unix - príkazy pre prácu s textom (Tomáš Karas)
17
Unix - príkazy pre prácu s textom (Tomáš Karas)
Príkaz paste Použitie: paste [-s] [-d list] súbor... -s spojenie riadkov súborov v takom poradí v akom sú na príkazovom riadku -d list zoznam obsahuje znaky, ktoré sa použijú na oddeľovanie riadkov jednotlivých súborov (cyklicky) Unix - príkazy pre prácu s textom (Tomáš Karas)
18
Unix - príkazy pre prácu s textom (Tomáš Karas)
Príklad paste súbor a.txt - obsahuje text 11prvy 11druhy 12prvy 12druhy súbor b.txt - obsahuje text 21prvy 21druhy 22prvy 22druhy Unix - príkazy pre prácu s textom (Tomáš Karas)
19
Unix - príkazy pre prácu s textom (Tomáš Karas)
Príklad paste >paste a.txt b.txt 11prvy 11druhy 21prvy 21druhy 12prvy 12druhy 22prvy 22druhy > ?: Vysvetlivky: > - znak, ktorým sa hlási operačný systém rovné písmená - text zadávaný užívateľom šikmé písmená - výstup programu Unix - príkazy pre prácu s textom (Tomáš Karas)
20
Unix - príkazy pre prácu s textom (Tomáš Karas)
Príkaz tr filtruje alebo zamieňa znaky vstupom je štandardný vstup Unix - príkazy pre prácu s textom (Tomáš Karas)
21
Unix - príkazy pre prácu s textom (Tomáš Karas)
Príkaz tr Použitie: tr [prepínače] reťazec1 [reťazec2] Prepínače: -d znaky zadané v parametri reťazec1 budú vymazané -c vytvorí doplnok množiny znakov v parametri reťazec1 -s zruší viacnásobný výskyt reťazca zadaného ako parameter reťazec1 alebo reťazec2 vo vstupe Unix - príkazy pre prácu s textom (Tomáš Karas)
22
Unix - príkazy pre prácu s textom (Tomáš Karas)
Príkaz tr -u výstup nebude zdržiavaný vo vyrovnávacej pamäti Unix - príkazy pre prácu s textom (Tomáš Karas)
23
Unix - príkazy pre prácu s textom (Tomáš Karas)
Príklad tr >tr “[:lower:]“ “[:upper:]“ MweFd23 MWEFD23 <eof> > ?: Vysvetlivky: > - znak, ktorým sa hlási operačný systém rovné písmená - text zadávaný užívateľom šikmé písmená - výstup programu <eof> - príznak konca súboru Unix - príkazy pre prácu s textom (Tomáš Karas)
24
Unix - príkazy pre prácu s textom (Tomáš Karas)
Príklad tr tr -cd “[:print:]“ < subor - odfiltruje netlačitelné znaky zo súboru tr -cs “[:alpha:]” “\n“ < subor - vytvorí zoznam slov zo suboru - každé slovo na jednom riadku - slovo je retazec písmen Unix - príkazy pre prácu s textom (Tomáš Karas)
25
Unix - príkazy pre prácu s textom (Tomáš Karas)
Príkaz sort usporiada riadky textového súboru vstupom je súbor alebo štandardný vstup ?: Len všeobecný tvar, kvôli priveľkému počtu prepínačov a ich parametrov. Kompletný tvar: sort [-cmus] [-t separator] [-o output-file] [-T tempdir] [-bdfiMnr] [+POS1[-POS2]] [-k POS1[,POS2]] [file...] Unix - príkazy pre prácu s textom (Tomáš Karas)
26
Unix - príkazy pre prácu s textom (Tomáš Karas)
Príkaz sort Použitie: sort prepínače-parametre [súbor...] Pracuje v jednom z troch módov: usporiadanie (implicitný mód) test usporiadania prepínač -c zlučovanie a triedenie súborov po skupinách prepínač -m Unix - príkazy pre prácu s textom (Tomáš Karas)
27
Unix - príkazy pre prácu s textom (Tomáš Karas)
Príklad sort >sort jano andrej <eof> > ?: Vysvetlivky: > - znak, ktorým sa hlási operačný systém rovné písmená - text zadávaný užívateľom šikmé písmená - výstup programu <eof> - príznak konca súboru Unix - príkazy pre prácu s textom (Tomáš Karas)
28
Unix - príkazy pre prácu s textom (Tomáš Karas)
Príklad sort súbor mena - obsahuje text jano andrej miso fero Unix - príkazy pre prácu s textom (Tomáš Karas)
29
Unix - príkazy pre prácu s textom (Tomáš Karas)
Príklad sort >sort -c mena sort: disorder on mena > ?: Vysvetlivky: > - znak, ktorým sa hlási operačný systém rovné písmená - text zadávaný užívateľom šikmé písmená - výstup programu Unix - príkazy pre prácu s textom (Tomáš Karas)
30
Unix - príkazy pre prácu s textom (Tomáš Karas)
Príkaz sed dávkový editor vstupom je súbor alebo štandardný vstup výstupom je štandardný výstup Unix - príkazy pre prácu s textom (Tomáš Karas)
31
Unix - príkazy pre prácu s textom (Tomáš Karas)
Príkaz sed Použitie: sed prepínače príkazy [súbory] príkazy - príkazy programu sed súbory - súbor s príkazmi - súbory s upravovaným textom Unix - príkazy pre prácu s textom (Tomáš Karas)
32
Unix - príkazy pre prácu s textom (Tomáš Karas)
Príkaz sed Prepínače: -e príkaz - pridá príkaz k zoznamu príkazov -f súbor - pridá príkazy zo súboru k zoznamu príkazov -n - potlačí vypisovanie výstupných riadkov na výstup Unix - príkazy pre prácu s textom (Tomáš Karas)
33
Unix - príkazy pre prácu s textom (Tomáš Karas)
Príkaz sed Formát príkazov programu sed: [adresa[,adresa]]funkcia[argumenty] adresa - číslo riadku v súbore od začiatku, na ktorom sa daná funkcia vykoná bez adresy - funkcia sa vykoná na všetkých riadkoch znak $ - špeciálna adresa - posledný riadok posledného súboru Unix - príkazy pre prácu s textom (Tomáš Karas)
34
Unix - príkazy pre prácu s textom (Tomáš Karas)
Príkaz sed Funkcie: d - vybraný riadok sa nezobrazí - vykonávanie príkazov začne od začiatku n - zobrazí riadok a prejde na ďalší riadok vstupného súboru a - pripojí text k vybranému riadku p - vypíše vybraný riadok na výstup - ignoruje nastavenie prepínača -n Unix - príkazy pre prácu s textom (Tomáš Karas)
35
Unix - príkazy pre prácu s textom (Tomáš Karas)
Príkaz sed Funkcie: (pokračovanie) w subor - podobne ako funkcia p ale výstup je posielaný do súboru r subor - obsah súboru pripojí k vybranému riadku a text - ku vybranému riadku pripojí text Unix - príkazy pre prácu s textom (Tomáš Karas)
36
Unix - príkazy pre prácu s textom (Tomáš Karas)
Príklad sed subor pokus.txt - obsahuje text riadok jedna riadok dva treti riadok 4. riadok riadok 5 Unix - príkazy pre prácu s textom (Tomáš Karas)
37
Unix - príkazy pre prácu s textom (Tomáš Karas)
Príklad sed >sed -n ‘2,4 p’ pokus.txt riadok dva treti riadok 4. riadok > ?: Vysvetlivky: > - znak, ktorým sa hlási operačný systém rovné písmená - text zadávaný užívateľom šikmé písmená - výstup programu Unix - príkazy pre prácu s textom (Tomáš Karas)
38
Unix - príkazy pre prácu s textom (Tomáš Karas)
Príklad sed >sed ‘2 a nove’ pokus.txt riadok jedna riadok dvanove treti riadok 4. riadok riadok 5 > ?: Vysvetlivky: > - znak, ktorým sa hlási operačný systém rovné písmená - text zadávaný užívateľom šikmé písmená - výstup programu Unix - príkazy pre prácu s textom (Tomáš Karas)
39
Unix - príkazy pre prácu s textom (Tomáš Karas)
Príkaz awk vyhľadávanie vzorov v texte a vykonávanie akcií vlastný jazyk pre prácu s textom mnoho konštrukcií je podobných s C Unix - príkazy pre prácu s textom (Tomáš Karas)
40
Unix - príkazy pre prácu s textom (Tomáš Karas)
Príkaz awk Použitie: awk -f programovýsúbor [súbory] awk program [súbory] Prepínač -f - program sa načíta z programového súboru Unix - príkazy pre prácu s textom (Tomáš Karas)
41
Unix - príkazy pre prácu s textom (Tomáš Karas)
Príkaz awk Formát programu pre awk: vzor { akcia } vzor vyberá riadky zo vstupného súboru na vybranom riadku sa vykoná akcia ak nie je uvedený vzor akcia sa vykoná na všetkých riadkoch ak nie je uvedená akcia riadky sa prekopírujú na výstup Unix - príkazy pre prácu s textom (Tomáš Karas)
42
Unix - príkazy pre prácu s textom (Tomáš Karas)
Príkaz awk Vzory: regulárne výrazy provnávacie operátory < <= == != >= > logické operátory || && interval riadkov dva vzory oddelené čiarkou „BEGIN“ akcie sa vykonajú na začiatku „END“ akcie sa vykonajú na konci Unix - príkazy pre prácu s textom (Tomáš Karas)
43
Unix - príkazy pre prácu s textom (Tomáš Karas)
Príkaz awk Vzory: (pokračovanie) $číslo - určuje stĺpec v riadku ~ - vzor sa nachádza v prvom stĺpci # označenie komentára Unix - príkazy pre prácu s textom (Tomáš Karas)
44
Unix - príkazy pre prácu s textom (Tomáš Karas)
Príkaz awk Akcie: print - vytlačí riadok na výstup ten možno presmerovať do súboru operátormi > >> alebo do iného programu operátorom | $číslo vyberá jeden stĺpec z riadku Unix - príkazy pre prácu s textom (Tomáš Karas)
45
Unix - príkazy pre prácu s textom (Tomáš Karas)
Príkaz awk Premenné: umožňuje použiť premenné NR číslo aktuálneho riadku $0 aktuálny riadok NF počet polí v aktuálnom riadku $1-$n polia v aktuálnom riadku FS oddeľovač polí na vstupe OFS oddeľovač polí na výstupe Unix - príkazy pre prácu s textom (Tomáš Karas)
46
Unix - príkazy pre prácu s textom (Tomáš Karas)
Príkaz awk Premenné: (pokračovanie) RS oddeľovač riadkov (záznamov) na vstupe ORS oddeľovač riadkov na (záznamov) výstupe FILENAME meno vstupného suboru Unix - príkazy pre prácu s textom (Tomáš Karas)
47
Unix - príkazy pre prácu s textom (Tomáš Karas)
Príkaz awk Funkcie: length(reťazec) - dĺžka reťazca int(číslo) - celá časť čísla index(R1,R2) - vráti pozíciu, kde začína reťazec R2 v reťazci R1 split(R,P,O) - ukladá prvky R oddelené O do poľa P substr(R,P,L) - vráti podreťazec R začínajúci na pozícii P dĺžky L Unix - príkazy pre prácu s textom (Tomáš Karas)
48
Unix - príkazy pre prácu s textom (Tomáš Karas)
Príkaz awk Funkcie: (pokračovanie) match(S,R) - vráti pozíciu reťazca R v reťazci S - nulu ak sa nenachádza tolower(R) - skonvertuje reťazec na malé písmená toupper(R) - skonvertuje reťazec na veľké písmená Unix - príkazy pre prácu s textom (Tomáš Karas)
49
Unix - príkazy pre prácu s textom (Tomáš Karas)
Príkaz awk Operátory: ako v jazyku C * / % + = += -= *= /= %= Unix - príkazy pre prácu s textom (Tomáš Karas)
50
Unix - príkazy pre prácu s textom (Tomáš Karas)
Príkaz awk Asociatívne polia: indexami sú reťazce prístup do poľa: pole [ reťazec ] = hodnota Unix - príkazy pre prácu s textom (Tomáš Karas)
51
Unix - príkazy pre prácu s textom (Tomáš Karas)
Príklad awk súbor ahoj - obsahuje text toyota gl mercedes h volvo st ford pl seat td Unix - príkazy pre prácu s textom (Tomáš Karas)
52
Unix - príkazy pre prácu s textom (Tomáš Karas)
Príklad awk >awk ‘{printf $3, $1 }’ ahoj 23 toyota 50 mercedes 44 volvo 38 ford 29 seat > ?: Vysvetlivky: > - znak, ktorým sa hlási operačný systém rovné písmená - text zadávaný užívateľom šikmé písmená - výstup programu Unix - príkazy pre prácu s textom (Tomáš Karas)
53
Unix - príkazy pre prácu s textom (Tomáš Karas)
Príklad awk >awk ‘$4 < ’ ahoj toyota gl mercedes h seat td > ?: Vysvetlivky: > - znak, ktorým sa hlási operačný systém rovné písmená - text zadávaný užívateľom šikmé písmená - výstup programu Unix - príkazy pre prácu s textom (Tomáš Karas)
54
Unix - príkazy pre prácu s textom (Tomáš Karas)
Príklad awk >awk ‘NR == 2, NR == 4’ ahoj mercedes h volvo st ford pl > ?: Vysvetlivky: > - znak, ktorým sa hlási operačný systém rovné písmená - text zadávaný užívateľom šikmé písmená - výstup programu Unix - príkazy pre prácu s textom (Tomáš Karas)
Podobné prezentace
© 2024 SlidePlayer.cz Inc.
All rights reserved.