Functio İsmi
Açıklaması şöyle. Çoğu programlama dili ile aynı özellikleri taşıyor.
Parametre almasa bile parantez gerekir.
Açıklaması şöyle. Çoğu programlama dili ile aynı özellikleri taşıyor.
name A word consisting only of alphanumeric characters and
underscores, and beginning with an alphabetic character
or an underscore. Also referred to as an identifier.
Ancak çoğu Linux dağıtımında çok daha farklı function isimleri kullanılabiliyor ve çalışyor. Şöyle yaparız.Function'ı çağırmak için ismini yazmak yeterli. myfunction () şeklinde çağırmaya gerek yok. Çıktı olarak abc::def alırız.#!/bin/bash
function abc::def() {
echo "${FUNCNAME[0]}"
}
abc::def
Function Kelimesi OlmadanParametre almasa bile parantez gerekir.
Örnek
Şöyle yaparız
#!/bin/bash
die() {
echo 'error: mandatory conditions not met!' >&2
exit 1
}
value=$1
(( value > 0 )) && echo "$value > 0" || die;
(( value > 1 )) && echo "$value > 1" || die;
(( value > 2 )) && echo "$value > 2" || die;
(( value > 3 )) && echo "$value > 3" || die;
Örnek
Elimzide şöyle bir kod olsun.
Örnek
Şöyle yaparız.
Şöyle yaparız.
Integer değişken tanımlamak için şöyle yaparız.
do_something () {
do it
}
Çağırmak için parantez kullanmaya gerek yok şöyle yaparız.$ do_something () { echo 'do it'; } ; do_something
do it
Function Kelimesi İle Örnek
Şöyle yaparız.
function nevens {
local sum=0
for element in $@; do
let evencheck=$(( element % 2 ))
if [[ $evencheck -eq 0 ]]; then
let sum=sum+1
fi
done
echo $sum
}
Çağırmak için şöyle yaparız.$ nevens 42 6 7 9 33
2
$ nevens 42 6 7 9 33 22
3
$ nevens {1..10..2} # 1 to 10 step 2 → odd numbers only
0
$ nevens {2..10..2} # 2 to 10 step 2 → five even numbers
5
ÖrnekŞöyle yaparız.
function evencheck
{
return $(( $1 % 2 ))
}
function nevens
{
local -i sum=0
for element
do
# `if` implicitly checks that the returned value/exit status is 0
if evencheck "$element"
then
(( sum++ ))
fi
done
echo "$sum"
}
Yerel Değişken TanımlamakInteger değişken tanımlamak için şöyle yaparız.
local -i sum=0
Hiç yorum yok:
Yorum Gönder