Область видимости переменных в KSH

Я написал образец функции KornShell для разделения строки, помещения ее в массив и вывода значений. Код приведен ниже

#!/usr/bin/ksh

splitString() {

    string="abc@hotmail.com;xyz@gmail.com;uvw@yahoo.com"

    oIFS="$IFS"; 
    IFS=';' 
    set -A str $string
    IFS="$oIFS"
}

splitString
echo "strings count = ${#str[@]}"
echo "first : ${str[0]}";
echo "second: ${str[1]}";
echo "third : ${str[2]}";

Теперь echoне выводит значения массива, поэтому я предполагаю, что это как-то связано с областью действия определенного массива.

Я новичок в написании сценариев Shell, может ли кто-нибудь помочь мне понять область действия переменных в приведенном выше примере?

10
задан javaPlease42 13 March 2014 в 14:53
поделиться