Ero sivun ”Bash-skriptaus” versioiden välillä

Siirry navigaatioon Siirry hakuun
961 merkkiä lisätty ,  25. maaliskuuta 2007
funktioista perusteet
(funktioista perusteet)
Rivi 69: Rivi 69:


Tässä käytetään vertailuoperaattoria =, joka on tosi, jos merkkijonot ovat samat. Muita vertailuoperaattoreita ovat
Tässä käytetään vertailuoperaattoria =, joka on tosi, jos merkkijonot ovat samat. Muita vertailuoperaattoreita ovat
{|<!--taulukon määrite--> {{prettytable}}
{|<!--taulukon määrite-->
|-
|-
! Operaattori
! Operaattori
Rivi 124: Rivi 124:
  for muuttuja in {c..o}; { echo -n "$muuttuja "; sleep 1;}
  for muuttuja in {c..o}; { echo -n "$muuttuja "; sleep 1;}
=== While ===
=== While ===
== Funktiot ==
Kuten "oikeissa" ohjelmointikielissä, myös bash-skripteissä on mahdollista käyttää funktioita seuraavalla tavalla
<pre>
#!/bin/bash
function Käyttis {
        os="Linux"
}
os="Windows"
#Kutsutaan funktiota
Funktio
echo $a
</pre>
Tulostaisi "Linux".
Funktio määritellään siis syntaksilla
<pre>
function Funktio {
#koodi
}
</pre>
Jos halutaan skriptin toimivan myös [[Sh]]-komentotulkkia käytettäessä, funktion kanssa on käytettävä syntaksia
<pre>
Funktio() { ... }
</pre>
Jos muuttujia ei funktiossa erikseen määritellä yksityisiksi, ne ovat julkisia. Eli kun esimerkkiskriptissämme muutimme muuttujan $os arvoa funktiossa, tämä muutos näkyi myös funktion ulkopuolella. Muuttuja voidaan määritellä yksityiseksi avainsanalla <tt>local</tt>:
<pre>
#!/bin/bash
function Käyttis {
        local os        # os paikallinen muuttuja
        os="Gentoo"
}
os="Debian"
#Kutsutaan funktiota
Käyttis
echo $os
</pre>
Tulostaisi "Debian".


== Vinkkejä ==
== Vinkkejä ==

Navigointivalikko