看板 LinuxDev 關於我們 聯絡資訊
在此非常謝謝 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)
dozer:讚耶!另外不知道你有沒有看過這個 01/18 11:32
dozer:http://tinyurl.com/or6nf 01/18 11:33
dozer:如果非要認真的寫bash script 這些tips還蠻有用的 01/18 11:33
WalkingIce:(拍手) 01/18 12:53
milochen:其實我是自修蔣大偉編譯的那本 Bash Shell 入門。 01/19 21:54
milochen:另一本當作是字典用 :) 01/19 21:55
jserv:這裡有個變形,也是 shell + 遞迴 01/20 01:00
milochen:So Cool! ^__^ 01/20 09:12