Ero sivun ”Awk” versioiden välillä

Siirry navigaatioon Siirry hakuun
1 451 merkkiä lisätty ,  27. syyskuuta 2008
(perusoppaan alkua, osittain kopiointia Unix.sestä koska lisenssi sen sallii)
Rivi 59: Rivi 59:


== Printf ==
== Printf ==
Printf on awk:n funktio, jolla on mahdollista tehdä tarkempia muotoiluja tulostukselle. Se toimii samaan tapaan kuin vastaava funktio [[C]]-kielessä ja sen syntaksi on
printf "muotoilumerkkijono", muuttuja1, muuttuja2, ...
Ensimmäisenä annettava merkkijono sisältää tavallista tulostuvaa tekstiä ja voi lisäksi sisältää erikoismerkkejä, joiden paikalle sijoitetaan annettavat muuttujat sopivasti muotoiltuna. Ensimmäinen erikoismerkki käsittelee ensimmäisen parametrina annetun muuttujan, toinen toisen jne.
Erikoismerkit alkavat prosenttimerkillä jota seuraa kirjain ja mahdollisesti numeroita (jos halutaan tulostaa prosenttimerkki, on käytettävä merkintää %%). Erikoismerkkejä ovat
{| border=1
|-
|'''Merkki'''
|'''Selitys'''
|-
|%c
|Tulostaa ASCII-numeroa vastaavan merkin. Esimerkiksi <tt>printf "%c", 65</tt> tulostaisi "A"
|-
|%d
|Tulostaa kokonaisluvun
|-
|%i
|Tulostaa kokonaisluvun
|-
|%e
|Tulostaa luvun halutussa eksponenttimuodossa. Esimerkiksi <tt>printf "%4.3e", 1950</tt> tulostaisi "1.950e+03" (4 merkitsevää numeroa ja eksponenttina 3)
|-
|%f
|Tulostaa desimaaliluvun
|-
|%g
|Tulostaa luvun joko desimaali- tai eksponenttimuodossa sen mukaan, kummassa tarvitaan vähemmän merkkejä
|-
|%o
|Tulostaa etumerkittömän oktaaliluvun
|-
|%s
|Tulostaa merkkijonon
|-
|%x
|Tulostaa etumerkittömän heksaluvun
|-
|%X
|Tulostaa etumerkittömän heksaluvun käyttäen desimaaliluvuille 10-15 isoja kirjaimia
|-
|}


== Silmukat ==
== Silmukat ==

Navigointivalikko