8
1 Johdatus Linuxiin/UNIXiin: Osa 3 Reijo Siven Tietojenk sittelytieteen laitos Helsingin yliopisto R. Siven: Linux/UNIX Osa 3 2 Sis llys Tekstin ladonta (kertausta) ym. Prosessien hallinta Sy tt ja tulostus S nn lliset lausekkeet Tiedostojen k sittely Hakemistojen ja tiedostojen arkistointi ja pakkaus Tekstin ladonta (kertausta) ym. R. Siven: Linux/UNIX Osa 3 4 Latex-ladontaohjelma latex tiedosto.tex Ladontaohjelma, jossa tiedostossa on sek tulostettava teksti ett komentoja (vrt. HTML). Matemaattisten alojen (esim. tkt) standardi. Tuottaa v litulostiedoston tiedosto.dvi, joka voidaan muuntaa mm. PostScript-muotoon. Lis tietoja kirjoista: Lamport, Latex: A Document Preparation System Goossens et al: The Latex Companion dvips tiedosto.dvi Tekee PostScript-tiedoston Latex-tulostiedostosta tiedosto.dvi R. Siven: Linux/UNIX Osa 3 5 Esimerkki: emacs artikkeli.tex Kirjoitetaan artikkeli …. latex artikkeli.tex Teh n v litiedosto dvips artikkeli.dvi PostScript muunnos lpr -Pps2 artikkeli.ps Tulostetaan PostScript ghostview artikkeli.ps Tulostetaan n yt lle R. Siven: Linux/UNIX Osa 3 6 xv ja mpage xv Ohjelma, jonka Grab-toiminnolla voidaan kaapata n yt lt kuva koko n yt st , n yt alueesta tai yksitt isest ikkunasta. mpage [optiot][tiedostot] Monipuolinen PostScript-muotoilija, joka osaa mm. pist monta sivua yhdelle paperiarkille. Komentoa voi k ytt esim. tavallisen tekstin muuttamiseen PostScript-kielelle. Lis tietoja: man mpage.

Latex-ladontaohjelma Tekstin ladonta (kertausta) ym....1 Johdatus Linuxiin/UNIXiin: Osa 3 Reijo Siven Tietojenk sittelytieteen laitos Helsingin yliopisto R. Siven: Linux/UNIX Osa 3

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Latex-ladontaohjelma Tekstin ladonta (kertausta) ym....1 Johdatus Linuxiin/UNIXiin: Osa 3 Reijo Siven Tietojenk sittelytieteen laitos Helsingin yliopisto R. Siven: Linux/UNIX Osa 3

1

Johdatus Linuxiin/UNIXiin: Osa 3

Reijo Siven

Tietojenk sittelytieteen laitos

Helsingin yliopisto

R. Siven: Linux/UNIX Osa 3 2

Sis llys

Tekstin ladonta (kertausta) ym.

Prosessien hallinta

Sy tt ja tulostus

S nn lliset lausekkeet

Tiedostojen k sittely

Hakemistojen ja tiedostojen arkistointi ja pakkaus

Tekstin ladonta (kertausta) ym.

R. Siven: Linux/UNIX Osa 3 4

Latex-ladontaohjelma

– latex tiedosto.texLadontaohjelma, jossa tiedostossa on sek tulostettava tekstiett komentoja (vrt. HTML).

Matemaattisten alojen (esim. tkt) standardi.

Tuottaa v litulostiedoston tiedosto.dvi, joka voidaan muuntaamm. PostScript-muotoon.

Lis tietoja kirjoista:

• Lamport, Latex: A Document Preparation System

• Goossens et al: The Latex Companion

– dvips tiedosto.dviTekee PostScript-tiedoston Latex-tulostiedostosta tiedosto.dvi

R. Siven: Linux/UNIX Osa 3 5

– Esimerkki:emacs artikkeli.tex Kirjoitetaan artikkeli….latex artikkeli.tex Teh n v litiedostodvips artikkeli.dvi PostScript muunnoslpr -Pps2 artikkeli.ps Tulostetaan PostScript

ghostview artikkeli.ps Tulostetaan n yt lle

R. Siven: Linux/UNIX Osa 3 6

xv ja mpage

– xvOhjelma, jonka Grab-toiminnolla voidaan kaapatan yt lt kuva koko n yt st , n yt alueesta taiyksitt isest ikkunasta.

– mpage [optiot][tiedostot]Monipuolinen PostScript-muotoilija, joka osaa mm.pist monta sivua yhdelle paperiarkille. Komentoavoi k ytt esim. tavallisen tekstin muuttamiseenPostScript-kielelle. Lis tietoja: man mpage.

Page 2: Latex-ladontaohjelma Tekstin ladonta (kertausta) ym....1 Johdatus Linuxiin/UNIXiin: Osa 3 Reijo Siven Tietojenk sittelytieteen laitos Helsingin yliopisto R. Siven: Linux/UNIX Osa 3

2

Prosessien hallinta

R. Siven: Linux/UNIX Osa 3 8

Prosessin tilat

Prosessi = itsen inen tapahtuma, joka onsuorituksessa (yleens komento)

Prosessi voi olla jossain seuraavista tiloista:– Suorituksessa etualalla (foreground process)

– Suorituksessa taka-alalla (background process)

– Pys tettyn (suspend)Taustaprosessi pys ytet n, jos se yritt kirjoittaan yt lle

R. Siven: Linux/UNIX Osa 3 9

Prosessit ovat komentotulkkikohtaisia– Vain yksi prosessi on etualalla kerrallaan. Se

saa lukea n pp imist ja tulostaa n yt lle.

– Tausta- ja pys ytettyj prosesseja voi ollauseita.

R. Siven: Linux/UNIX Osa 3 10

Prosessien monitorointi

– ps [optiot]N ytt suorituksessa olevat prosessit

– -a N yt kaikki prosessit (oletus: omat)

– -l N yt nemm n tietoja

– jobsN ytt samasta tulkista k ynnistetyt prosessit

– topMonitoroi ja n ytt prosessien kuormitustilanteen

– Lopetus q -komennolla

R. Siven: Linux/UNIX Osa 3 11

Prosessien hallintakomentojaProsessin vienti tausta-ajoon– &

Vie aloitettavan komennon taustalle

Esim. cc ohjelma.c &

– C-zPys ytt etualalla olevan prosessin

R. Siven: Linux/UNIX Osa 3 12

Prosessin tuonti etu-alalle– fg [%tunnus]

Tuo pys ytetyn tai taustalla olevan prosessinetualalle

– bg [%tunnus]Siirt pys ytetyn prosessin taustalle

– Tunnuksen (PID) saa selville komennolla jobstai ps.

Page 3: Latex-ladontaohjelma Tekstin ladonta (kertausta) ym....1 Johdatus Linuxiin/UNIXiin: Osa 3 Reijo Siven Tietojenk sittelytieteen laitos Helsingin yliopisto R. Siven: Linux/UNIX Osa 3

3

R. Siven: Linux/UNIX Osa 3 13

kill [-n] tunnusL hett lopetusk skyn prosessille, jonka tunnus on"tunnus”

Optio -n: M r mik lopetusk sky l hetet nprosessille. -9 on vahvin

R. Siven: Linux/UNIX Osa 3 14

– Esimerkkej ($ on kursorimerkki)$ cc logfilt2.c &

[1] 7063

$ jobs

[1] + background cc logfilt2.c

$ kill -9 %1

[1] Killed cc logfilt2.c

R. Siven: Linux/UNIX Osa 3 15

$ cc jokumuu.c &

[1] 7088

$ ps

.... 7088 cc jokumuu.c

$ kill -9 7088

[1] Killed cc jokumuu.c

R. Siven: Linux/UNIX Osa 3 16

Sy tt ja tulostus: stdin, stdout, stderr

Prosessin kolme s tt - ja tulostuskanavaa:– stdin on sy tt kanava, jonka kautta prosessi

saa tietoa ulkoa (yleens n pp imist lt )

– stdout on tulostuskanava, jonka kautta prosessiantaa tietoja toiminnastaan (yleens n ytt )

– stderr on virheilmoituskanava, jonka kauttaprosessi voi esim. tiedottaa poikkeustilanteista(eli tulostaa jotain, mutta mahdollisesti erikanavaa pitkin kuin stdout)

R. Siven: Linux/UNIX Osa 3 17

Sy tt ja tulostus: Oletuksia

Oletusarvoisesti:– stdin on yhdistetty n pp imist

– stdout ja stderr on yhdistetty n ytt

Sek sy tt ett tulostus voidaanuudelleenohjata (redirect)– Voidaan lukea muuta kuin n pp imist ja

kirjoittaa muulle kuin n yt lle

R. Siven: Linux/UNIX Osa 3 18

S tt ja tulostus: Uudelleenohjaus

Komennon uudelleenohjausparametrit:– komento >tiedosto

stdout ohjataan tiedostoon “tiedosto”

Esim. ps -l > prosessilistaus.txt

– komento >>tiedostostdout lis t n tiedoston “tiedosto” per n(tuhoamatta alkua)

– komento <tiedostostdin luetaan tiedostosta “tiedosto”

Page 4: Latex-ladontaohjelma Tekstin ladonta (kertausta) ym....1 Johdatus Linuxiin/UNIXiin: Osa 3 Reijo Siven Tietojenk sittelytieteen laitos Helsingin yliopisto R. Siven: Linux/UNIX Osa 3

4

R. Siven: Linux/UNIX Osa 3 19

Esimerkkej

ls -l >tiedosto.txt– Kokonaan uusi tiedosto

ls -l >>tiedosto.txt– Listaus tiedoston loppuun

more < tiedosto.txt– Tiedoston n ytt sivu sivulta

R. Siven: Linux/UNIX Osa 3 20

S te ja tulostus yhdistettyn– Esim. sort <lista.txt >aakkostettu_lista.txt

S tteen loppumerkki on C-d– p tt my s n pp imist lt nnetun s tteen

– Esim. cat > tiedosto

– Tiedostosta luettaessa sy tetiedostoa ei tarvitselopettaa C-d-merkill

R. Siven: Linux/UNIX Osa 3 21

Komennon saama s te on eri asia kuinkomennon parametrit.– Parametrit annetaan komentorivill

– Komento saa s tteens suoritusaikana

R. Siven: Linux/UNIX Osa 3 22

Putket (pipe)

Komentojen s tt ja tulostusta voidaanputkittaa:– Yhden prosessin tulostus on toisen sy te

Komennon komento1 tulostus ohjataankomennon komento2 s tteeksiputkimerkill |:– komento1 | komento2

R. Siven: Linux/UNIX Osa 3 23

Esimerkkejls -l | wc

– Tulosta merkit, sanat ja rivit tiedostolistauksesta

ls -l | wc >tiedostolkm.txt– Kuten yll , mutta tulos tiedostoon

cat ~/src/*.c | wc– Kaikkien C-l hdekielisten ohjelmien merkkien, sanojen ja

rivien yhteislukum r

R. Siven: Linux/UNIX Osa 3 24

Putkia voi olla useita per kk in

Putken alussa ja lopussa voi ollauudelleenohjausta

who | sort | cat -b >kayttajat.txt– numeroitu k ytt j listaus

Page 5: Latex-ladontaohjelma Tekstin ladonta (kertausta) ym....1 Johdatus Linuxiin/UNIXiin: Osa 3 Reijo Siven Tietojenk sittelytieteen laitos Helsingin yliopisto R. Siven: Linux/UNIX Osa 3

5

R. Siven: Linux/UNIX Osa 3 25

Putki yhdistettyn UNIXin filosofiaan tehdpieni komentoja tarjoaa keinot kootamonimutkaisia komentoja pienist paloista

Putkifilosofian johdosta l hes jokainenkomento osaa k ytt s tt - jatulostuskanavia

S n lliset lausekkeet

R. Siven: Linux/UNIX Osa 3 27

Merkkijonojen kuvaaminen

Tavallinen merkkijono– Jono annettuja per kk isi merkkej

S nn llinen lauseke– Keino kuvata merkkijonojoukkoja

valinnaisuus, ehdollisuus ja toisto

– Er iden komentojen ja apuohjelmien k ytt myhten inen esitystapa

mm. (e)grep, less, more, awk, emacs

R. Siven: Linux/UNIX Osa 3 28

S nn llinen lauseke

S nn llinen lauseke on hahmo (pattern),jolla voi etsi siihen sopivat merkkijonot.

Monipuolisempi mekanismi kuinjokerimerkit

S nn llinen lauseke sis lt :– Tavallisia merkkej : kuvaavat itsens

– Erikoismerkkej : kuvaavat rakenteita

R. Siven: Linux/UNIX Osa 3 29

Erikoismerkkej

. Mik tahansa merkki (paitsi rivinvaihto)

* 0-n kpl edellist merkki

\ Poista erityismerkitys

[...] Mik tahansa [...]:n sis ll oleva merkki

- V li, esimerkiksi 0-9, a-c.

^ Rivin alku

[^…]Hyv ksyt n merkit, jotka eiv t ole []:n v liss

$ Rivin loppu

R. Siven: Linux/UNIX Osa 3 30

– Er t komennot (awk, egrep, less,...)ymm rt v t m s seuraavat erikoismerkit:

+ 1-n kpl edellist merkki

? 0-1 kpl edellist merkki

| Vaihtoehdot

() Ryhmittelysulut

– S lliset lausekkeet jokerimerkit:S nn llisi lausekkeita k ytet n ohjelmien sis ll .

Jokerimerkkej k ytet n kuvaamaan ohjelmilleannettavia parametreja.

Page 6: Latex-ladontaohjelma Tekstin ladonta (kertausta) ym....1 Johdatus Linuxiin/UNIXiin: Osa 3 Reijo Siven Tietojenk sittelytieteen laitos Helsingin yliopisto R. Siven: Linux/UNIX Osa 3

6

R. Siven: Linux/UNIX Osa 3 31

Esimerkkej

– teksti merkkijono teksti

– ^teksti merkkijono teksti rivin alussa

– teksti$ merkkijono teksti rivin lopussa

– [Tt]eksti Teksti tai teksti

– t[aeiouy ]ksti toinen kirjain vokaali

– t.eksti toinen kirjain mik tahansa

R. Siven: Linux/UNIX Osa 3 32

– ^...$ kolmemerkkinen rivi

– ^\. rivi alkaa pisteell

– ^[^.] rivi ei ala pisteell

– koe* koe, koee, koeee jne.

– [A-Z ][A-Z ]*Yksi tai useampi iso kirjain

R. Siven: Linux/UNIX Osa 3 33

egrep/awk/less -esimerkkej

– [A-Z ]+ Ainakin yksi iso kirjain

– juh|jeh|joh Joko juh, jeh tai joh

– 80[234]?86|pentium 8086, 80286, 80386,80486, pentium

– ju(ha)* ju, juha, juhaha, juhahaha,...

R. Siven: Linux/UNIX Osa 3 34

Etsint tiedostoista: grepMerkkijonon haku sy tteest :– grep [optiot] merkkijono [tiedostot]

Hakee tiedostoista (tai stdin) rivit, joilla on s llistlauseketta vastaava merkkijono

Optioita:– -c n yt vain osumarivien lukum r

– -i l rottele isoja ja pieni kirjaimia

– -l n yt pelk t tiedostonimet sellaisista tiedostoista,joissa on osumia

– -n n yt osumarivit rivinumeroineen

– -v n yt rivit, joilta ei l ydy osumia

R. Siven: Linux/UNIX Osa 3 35

– egrep [optiot] merkkijono [tiedostot]Kuten grep, mutta k ytt laajennettua s llistenlausekkeiden syntaksia (vertaa edell ) ja on useimmitennopeampi kuin pelkk grep

Optiot: kuten grep:ssa, lis ksi:– -e merkkijono K ytet n silloin, kun s llinen lauseke

(merkkijono) alkaa "-"-merkill

R. Siven: Linux/UNIX Osa 3 36

Esimerkkej : grep

ls -l | grep '^d'– vain hakemistot

ls -l | egrep 'Jan|Feb'– tammi- ja helmikuun tiedostot

Page 7: Latex-ladontaohjelma Tekstin ladonta (kertausta) ym....1 Johdatus Linuxiin/UNIXiin: Osa 3 Reijo Siven Tietojenk sittelytieteen laitos Helsingin yliopisto R. Siven: Linux/UNIX Osa 3

7

Tiedostojen k sittely

Vertailu, etsint

R. Siven: Linux/UNIX Osa 3 38

Tiedostojen vertailu: diff

– diff [optiot] tiedosto1 tiedosto2Listaa kahden tiedoston v liset erot.

Lis tietoja man diff.

R. Siven: Linux/UNIX Osa 3 39

Tiedostojen etsint : find– find hakemistot ehdot

Tehokas komento tiedostojen etsint varten

K y l pi annetut hakemistopuut:– Hakee annetut ehdot t ytt v t tiedostot.

Ainakin yksi hakemisto ja ehto annettava

R. Siven: Linux/UNIX Osa 3 40

Find: Hakuehtoja

-name 'tiedostonimi'– Toteutuu, jos haettavan tiedoston nimi t ytt hdon

tiedostonimi; ehdossa voi olla jokerimerkkej

-type c– Toteutuu, jos tiedosto on tyyppi c (f=tavallinen tiedosto,

d=hakemisto)

find ~ -type d -name '.*' -ls listaa kaikkihakemistot, jotka alkavat pisteellkotihakemistosta ja kaikista alihakemistoistaLis optioita ja esimerkkej : man find.

Hakemistojen ja tiedostojenarkistointi ja pakkaus

R. Siven: Linux/UNIX Osa 3 42

Arkistointi ja pakkaus

Arkistointia tarvitaan– Hakemisto/tiedosto-kokonaisuuden

tallettamiseksi k tev sti yhten tiedostona

Tiedostojen pakkausta tarvitaan– Levytilan s st miseksi

– Tiedonsiirron nopeuttamiseksi

Esimerkki– Verkon v lityksell toimitettava ohjelmisto

arkistoidaan tiedostoksi, joka pakataan.

Page 8: Latex-ladontaohjelma Tekstin ladonta (kertausta) ym....1 Johdatus Linuxiin/UNIXiin: Osa 3 Reijo Siven Tietojenk sittelytieteen laitos Helsingin yliopisto R. Siven: Linux/UNIX Osa 3

8

R. Siven: Linux/UNIX Osa 3 43

Arkistointi: tar

tar [optiot][tiedostot]Arkistoi tiedostoja levylle tai kopioi tiedostojaarkistosta takaisin. Jos tiedostojen joukossa onhakemistoja, koko hakemistosta alkava alipuukopioidaan.

Tominto-optiot (vain yksi/komento):– c tehd n uusi arkistotiedosto (compress)

– r liitet n tiedostot vanhaan arkistoon

– t tulostetaan arkistossa olevat tiedostonimet

– u lis t n tiedosto arkistoon, jos se ei ole viel siell

– x kopioidaan (avataan) tiedostot arkistosta (extract)

R. Siven: Linux/UNIX Osa 3 44

Lis optiot:– f arkisto talleta arkisto tiedostoon arkisto

– v n yt rkistoitavat tai palautettavattiedostonimet (verify)

R. Siven: Linux/UNIX Osa 3 45

Esimerkki– tar cvf koe.tar joku

• Hakemisto joku ja sen alihakemistot kopioidaanarkistotiedostoon (c=compress, v=verify, f=file)

– tar tvf koe.tar

• Tarkastetaan mit tiedostoja tuli arkistoon (t=tulosta)

– tar xvf koe.tar

• Puretaan arkisto. Alkuper inen arkistotiedosto jj ljelle (x=extract)

R. Siven: Linux/UNIX Osa 3 46

Tiedostojen pakkaus(kompressointi)

– compress [optiot][tiedostot]Pakkaa tiedostot pienemp n tilaan.

– Pakattu tiedosto saa .Z -p tteen. Avaus komennollauncompress.

– uncompress [optiot][tiedostot]Palauttaa compress-pakatut tiedostot.

R. Siven: Linux/UNIX Osa 3 47

Pakkaus “zippaamalla”

– gzip [optiot][tiedostot]Kuten compress, mutta pakkaa paremmin.Tuloksilla on .gz -p te

– gunzip [optiot][tiedostot]Kuten uncompress, mutta my s .gz -p tteisilletiedostoille.

R. Siven: Linux/UNIX Osa 3 48

Kalvot perustuvat:

– Juha Taina: Unix-perusteita -kalvomateriaali,1998.

– Fred Hantelmann: Linux Start up Guide,Springer, 1999.

– Eero Hyv nen: Muuntokoulutuksen peruskurssi-kalvomateriaali, 1999.