Ero sivun ”Awk” versioiden välillä
Siirry navigaatioon
Siirry hakuun
p
Pieniä päivityksiä ja parannuksia.
(→Aiheesta muualla: Päivitetty ja lisätty linkkejä.) |
p (Pieniä päivityksiä ja parannuksia.) |
||
Rivi 1: | Rivi 1: | ||
{{DISPLAYTITLE:{{lcfirst:{{PAGENAME}}}}}} | {{DISPLAYTITLE:{{lcfirst:{{PAGENAME}}}}}} | ||
'''awk'''-työkalun avulla voi helposti muuntaa tekstitiedoston rakennetta. awk ja sen laajennettu versio gawk kuuluvat Unix/Linux-käyttäjän perustyökaluihin silloin, kun kyseessä on: | '''awk'''-työkalun avulla voi helposti muuntaa tekstitiedoston rakennetta. awk ja sen laajennettu versio gawk (''GNU awk'') kuuluvat Unix/Linux-käyttäjän perustyökaluihin silloin, kun kyseessä on: | ||
* puhtaan tekstitiedoston muuntaminen riveittäin toiseen muotoon | * puhtaan tekstitiedoston muuntaminen riveittäin toiseen muotoon | ||
* rivien suodattaminen pois tekstistä tavalla, johon [[grep]] ei kykene | * rivien suodattaminen pois tekstistä tavalla, johon [[grep]] ei kykene | ||
Rivi 7: | Rivi 7: | ||
== Johdanto == | == Johdanto == | ||
awk on skriptikieli ja samanniminen tulkki tälle skriptikielelle. Se on tarkoitettu tiedon hakemiseen selkeän rakenteen omaavista tekstitiedostoista ja tämän tiedon esittämiseen siistissä muodossa. Sen kehittäminen aloitettiin jo 1977 AT&T:n tutkimuslaboratoriossa (''[[Bell Labs]]''). Samassa paikassa aloitettiin muutama vuosi aikaisemmin myös [[Unix]]in kehittäminen. | awk on skriptikieli ja samanniminen tulkki tälle skriptikielelle. Se on tarkoitettu tiedon hakemiseen selkeän rakenteen omaavista tekstitiedostoista ja tämän tiedon esittämiseen siistissä muodossa. Sen kehittäminen aloitettiin jo 1977 AT&T:n tutkimuslaboratoriossa (''[[Bell Labs]]''). Samassa paikassa aloitettiin muutama vuosi aikaisemmin myös [[Unix]]in kehittäminen. | ||
Nykyaikaisia awkin toteutuksia ovat mm. gawk ja mawk. | |||
awk:n tilalla on monesti käytetty [[Perl]]iä, joka on kehitetty mm. ratkaisemaan samankaltaisia ongelmia kuin awk. awk:n opettelu ei silti ole turhaa, sillä: | awk:n tilalla on monesti käytetty [[Perl]]iä tai [[Pythonia]], joka on kehitetty mm. ratkaisemaan samankaltaisia ongelmia kuin awk. awk:n opettelu ei silti ole turhaa, sillä: | ||
*awk on yksinkertaisempi (tärkeää jos mietit, kumman opettelisit ensin) | *awk on yksinkertaisempi (tärkeää jos mietit, kumman opettelisit ensin) | ||
*awk:n syntaksi on säännöllisempi | *awk:n syntaksi on säännöllisempi | ||
*awk löytyy lähestulkoon järjestelmästä kuin järjestelmästä, Perl-tulkki ei | *awk löytyy lähestulkoon järjestelmästä kuin järjestelmästä, Perl- tai Python-tulkki ei | ||
*[http://pubs.opengroup.org/onlinepubs/009695399/utilities/awk.html IEEE:n Unix-standardi] määrittelee awk:n melko kattavasti, kun taas Perlin parametrit ja syntaksi ovat eläneet päätoteutuksen mukana | *[http://pubs.opengroup.org/onlinepubs/009695399/utilities/awk.html IEEE:n Unix-standardi] määrittelee awk:n melko kattavasti, kun taas Perlin ja Pythonin parametrit ja syntaksi ovat eläneet päätoteutuksen mukana | ||
Tärkeää on siis ymmärtää, että awk ei ole ainoa työkalu tietyntyyppisten ongelmien ratkaisemiseen. Eikä se ole myöskään monipuolisin. Se saattaa kuitenkin monissa tilanteissa olla yksinkertaisempi käyttää kuin Perl-skriptit. | Tärkeää on siis ymmärtää, että awk ei ole ainoa työkalu tietyntyyppisten ongelmien ratkaisemiseen. Eikä se ole myöskään monipuolisin. Se saattaa kuitenkin monissa tilanteissa olla yksinkertaisempi käyttää kuin Perl- tai Python-skriptit. | ||
== Syntaksi == | == Syntaksi == | ||
Rivi 259: | Rivi 260: | ||
[[Luokka:Komentorivin perustyökalut]] | [[Luokka:Komentorivin perustyökalut]] | ||
{{Ohjelmointikielet}} |