|
カテゴリ:シェル
kshで関数を作ることができる。(kshだけではないが・・・)
戻り値は数値となるため、文字列を返すことができない。グローバルに定義された変数にセットすれば、特に必要ないのかもしれない。やはり、セット先を決めておくのはあまりよいとは思えない。そこで最初に思いついたのが、evalを使った方法だ。
引数と与えた文字列を変数名としてevalにて評価することにセットすることができる。ただし、この変数(RETURN_STR)はグローバルな変数ということになる。 文字列自体を返すことができれば、もうちょっとエレガントになると思われる。 次に思いついたのは以下のやり方。
バックスラッシュを使うが、このやり方のほうがよさそうだ。ただ、エラー処理が必要な場合は、最初のやり方のほうがいいかもしれない。 どちらも含めたやりかたもできる。 # 呼び出し方は以下のとおり。
ちなみにmyfunc内の_RETURN_VAL_はlocalとして宣言すれば、さらによいと思う。(localの使えない場合もあるので今回ははずしています) お気に入りの記事を「いいね!」で応援しよう
Last updated
2007/12/04 09:09:51 AM
コメント(0) | コメントを書く
[シェル] カテゴリの最新記事
|