從bash函數中返回任意值

 

Bash函數,不同於其他編程語言的函數,它更像一個子程序,即其返回值,只能是一個數字,以0表示成功,非0表示失敗。如果,您在bash函數中想返回除了數字之外的值,就需要自己設計一定的技巧了。今天看到了一篇文章,簡單介紹了三種技巧,筆者翻譯下來,與大家分享。

假設我們想返回一個字符串,最簡單的方法是:

通過一個全局變量myresult,來保存返回值。使用全局變量,其缺點也是不言而喻的。

第二種方法:

將一個shell函數作爲一個子程序調用,將返回值寫到子程序的標準輸出,來達到返回任意字符串的目的。

第三種方法:

這種方法,類似於C++中的通過引用返回函數值的做法。

當然,您還可以結合後兩種方法:

這樣,獲得了最大的靈活。

 

原文地址:http://www.linuxjournal.com/content/return-values-bash-functions

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章