Keskustelu:Bash-skriptaus
Voisiko joku osaavampi tarkistaa, että kuuluisiko alla olevassa skriptiesimerkissä olla funktion kutsuna Käyttis ei Funktio. En uskalla lähteä korjailemaan kun tiedän niin vähän asiasta että voin olla väärässä.
>>>
Funktiot
Kuten "oikeissa" ohjelmointikielissä, myös bash-skripteissä on mahdollista käyttää funktioita seuraavalla tavalla
- !/bin/bash
function Käyttis {
os="Linux"
} os="Windows"
- Kutsutaan funktiota
Funktio echo $os
Tulostaisi "Linux".
Funktiota kutsutaan kuten mitä tahansa komentoa, shell:t katsovat onko komentorivin komento
- alias
- sisäinen
- funktio
- ulkoinen
Joten kutsuttaessa ei kerrota millään lailla mitä tyyppiä edellisistä. Mahdollistaa esim. komentojen ylikirjoittamisen.
#!/bin/bash #!/usr/bin/bash os="Windows" function Kayttis { os="Linux" } function date { echo "Ketä kiinnostaa ?" } #-- ns. paaohjelma -- Kayttis echo "$os" # output Linux date
--Kshji 13. tammikuuta 2009 kello 15.44 (UTC)
Muuttujien, funktioiden ym. nimissä kannattaa pitäytyä merkeissä A-Z a-z 0-9 _ jos haluaa varmistaa, että toimii eri sh:ssä.