作者milochen (N=NP)
看板LinuxDev
标题Re: [问题] 如何让Shell Script里的函数return 字串?
时间Sat Jan 17 23:14:08 2009
在此非常谢谢 dozer 与 phterry
在这过程中,原来我有弄错了一些地方,导致当初误以为$() + echo 的作法不行。
原来,$() 与 echo的搭配就能够达到字串回传的效果。
若不是您们的帮忙,我想会一直耗在错误的点上思考,非常感谢^_^。
关於 Shell Script 与函数的使用,
在此小弟用个简单的递回的fibonacci函数作个总结…
我写了小例子,希望能藉此帮助 C/C++ programming 背景的人员,
能够快速上手 Bash 的模组化。
程式码开始 ===
#!/bin/sh
function fibonacci() #func(uint n=0)
{
local n=${1:-0}
if [ $n -eq 0 -o $n -eq 1 ]; then
echo 1
else
echo $(( $(fibonacci $(($n-1)) ) + $(fibonacci $(($n-2)) ) ))
fi
return 0
}
#fibonacci()
function main() #func(void)
{
local val=0
local val_max=5
while [ $val -lt $val_max ]
do
echo "fibonacci($val)=$(fibonacci $val)"
let val=$val+1
done
} #main()
main
程式码结束 ===
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 61.230.8.120
※ 编辑: milochen 来自: 61.230.8.120 (01/17 23:15)
※ 编辑: milochen 来自: 61.230.8.120 (01/17 23:15)
1F:推 dozer:赞耶!另外不知道你有没有看过这个 01/18 11:32
3F:推 dozer:如果非要认真的写bash script 这些tips还蛮有用的 01/18 11:33
4F:推 WalkingIce:(拍手) 01/18 12:53
5F:→ milochen:其实我是自修蒋大伟编译的那本 Bash Shell 入门。 01/19 21:54
6F:→ milochen:另一本当作是字典用 :) 01/19 21:55
7F:→ jserv:这里有个变形,也是 shell + 递回 01/20 01:00
9F:→ milochen:So Cool! ^__^ 01/20 09:12