Unix ja shell-ohjelmointi 2001, demo 6
Unix ja shell-ohjelmointi 2001, demo 6 (8.3.2001)
- Kirjoita skripti joka
- etsii henkilötunnuksia (PPKKVVSNNNT,
PPKKVV=syntymäpäivä, S=vuosisata (+-A), NNN=järjestysnumero,
T=tarkistusmerkki)
sisältävästä tiedostosta
(tiedostonimi argumenttina, sen puuttuessa stdinistä)
vuosina 1970-1979 syntyneitä naisia (sukupuolen kertoo
järjestysnumero: naisilla parillinen, miehillä pariton).
Henkilötunnus on aina joka rivin alussa, sen perässä voi olla muuta tietoa
(koko rivi tulostetaan). Henkilötunnuksen oikeellisuutta ei
tarvitse tarkistaa.
Testaukseen voi käyttää oheista hetuja.txt-tiedostoa.
- muuttaa argumenttina annetussa tiedostossa
olevista hakemistopoluista kotihakemiston ($HOME)
alla olevat muotoon ~/... (vaihtaa kotihakemiston
paikalle ~:n). Oleta että joka rivillä on vain yksi
hakemistopolku rivin alussa.
- muuttaa kaikki oletushakemistossa olevat .cc-tarkenteiset
tiedostot .C-tarkenteisiksi.
- Kirjoita skripti joka
- etsii argumenttina annetuista tiedostoista kaikki
'amerikkalaisia kirjaimia' vastaavat merkkijonomallit,
siis merkkijonot [a-z],
[A-Z] tai [a-zA-Z] ja tulostaa rivit joilla noita esiintyy
tiedostonimen ja rivinumeron kera.
- etsii rekursiivisesti annetun hakemiston alta kaikki normaalit tiedostot,
joista löytyy sana 'Pekka' (siis tiedoston sisältä, ei sen nimestä,
mutta vain tiedostonimet tulostetaan).
- Kirjoita skripti joka
tarkistaa että kaikkien /etc/passwd:stä löytyvien käyttäjien
kotihakemisto on ao. käyttäjän omassa omistuksessa ja että sinne ei
ole kirjoitusoikeutta maailmalla eikä ryhmällä.
- Kirjoita skripti joka
tulostaa halutunkokoisen kertotaulun (neliömäisen, rivit ja sarakkeet 1...n)
desimaali-, oktaali- tai heksadesimaalijärjestelmässä.
Argumentteina annetaan
koko (oletus 10) ja kantaluku (8, 10 tai 16, oletus 10).
- Kirjoita skripti joka
tutkii onko välilyönnein erotettuja numeroita sisältävä tiedosto
taikaneliö, eli onko siinä yhtä monta riviä kuin saraketta ja
kaikkien rivien, sarakkeiden ja diagonaalien summat samat.
Testausapuna voit käyttää oheista oddmagic-skriptiä,
joka parittomilla argumenteilla tuottaa sen kokoisia taikaneliöitä ja parillisilla
argumenteilla epätaikaneliöitä.
File translated from TEX by TTH, version 1.98.
On 7 Mar 2001, 19:41.