Ero sivun ”Keskustelu:Bash-skriptaus” versioiden välillä
Ei muokkausyhteenvetoa |
(muita esimerkki ohjelmia) |
||
(4 välissä olevaa versiota 2 käyttäjän tekeminä ei näytetä) | |||
Rivi 21: | Rivi 21: | ||
---- | ---- | ||
Funktiota kutsutaan kuten mitä tahansa komentoa, shell:t katsovat onko komentorivin komento | Funktiota kutsutaan kuten mitä tahansa komentoa, shell:t katsovat onko komentorivin komento | ||
*alias | |||
*sisäinen | |||
*funktio | |||
Joten kutsuttaessa ei kerrota millään lailla. Mahdollistaa komentojen ylikirjoittamisen. | *ulkoinen | ||
Joten kutsuttaessa ei kerrota millään lailla mitä tyyppiä edellisistä. Mahdollistaa esim. komentojen ylikirjoittamisen. | |||
<pre> | <pre> | ||
Rivi 48: | Rivi 50: | ||
--[[Käyttäjä:Kshji|Kshji]] 13. tammikuuta 2009 kello 15.44 (UTC) | --[[Käyttäjä:Kshji|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ä. | |||
---- | |||
if, while, until on hieman vajavaisesti/virheellisesti kerrottu. Ko. komentojen perässä on argumenttinä ihan normaali komentorivi, vain yksi vaihtoehto on käyttää test-komentoa, joka voidaan kirjoittaa myös [ merkkijonona. Ko. komentorivin exit-koodi annetaan komennolle if/while/until ja ko. arvon perusteella tapahtuu jatko. | |||
Voitte luntata lisää | |||
[http://awot.fi/sf/browser/showdocs?cust=ka&subdir=koulutus/shell/pikaohje Omasta pikaohjeestani] | |||
--[[Käyttäjä:Kshji|kshji]] 13. tammikuuta 2009 kello 16.32 (UTC) | |||
:Tosiaan tätä artikkeliahan voisi kehittää testaamalla muita shellejä vasten, että muokkaisin enemmän yleiseksi shell-skriptaus-artikkeliksi eikä niinkään bash-spesifiksi. --[[Käyttäjä:Maakuth|maakuth]] 13. tammikuuta 2009 kello 22.26 (UTC) | |||
Mitä muita hyviä esimerkki ohjelmia tulee mieleen tai mitä olette käyttäneet? | |||
Ja voisiko niitä tänne kirjoittaa. Ettei samaa "pyörää" tarvitse keksiä uudestaan. --[[Käyttäjä:Lahtis|Lahtis]] 19. maaliskuuta 2010 kello 13.55 (UTC) |
Nykyinen versio 19. maaliskuuta 2010 kello 16.55
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ä.
if, while, until on hieman vajavaisesti/virheellisesti kerrottu. Ko. komentojen perässä on argumenttinä ihan normaali komentorivi, vain yksi vaihtoehto on käyttää test-komentoa, joka voidaan kirjoittaa myös [ merkkijonona. Ko. komentorivin exit-koodi annetaan komennolle if/while/until ja ko. arvon perusteella tapahtuu jatko.
Voitte luntata lisää Omasta pikaohjeestani
--kshji 13. tammikuuta 2009 kello 16.32 (UTC)
- Tosiaan tätä artikkeliahan voisi kehittää testaamalla muita shellejä vasten, että muokkaisin enemmän yleiseksi shell-skriptaus-artikkeliksi eikä niinkään bash-spesifiksi. --maakuth 13. tammikuuta 2009 kello 22.26 (UTC)
Mitä muita hyviä esimerkki ohjelmia tulee mieleen tai mitä olette käyttäneet? Ja voisiko niitä tänne kirjoittaa. Ettei samaa "pyörää" tarvitse keksiä uudestaan. --Lahtis 19. maaliskuuta 2010 kello 13.55 (UTC)