関数からの戻り値の受け渡し
関数からの戻り値の受け渡し:
Bash関数は、数値と文字列値の両方を渡すことができます。関数から文字列値を渡す方法を次の例に示します。‘function_return.sh’という名前のファイルを作成し、次のコードを追加します。関数greeting()は、文字列値を変数valに返します。この変数は、処理の最後に他の文字列と組み合わせて出力します。
#!/bin/bash
function greeting(){
str="こんにちは、$name";
echo "$str";
}
echo "あなたの名前を入力して下さい";
read name;
val=$(greeting);
echo "関数からの戻り値は「${val}」です。";
bashコマンドでファイルを実行します。
$ bash function_return.sh
あなたの名前を入力して下さい
suzuki
関数からの戻り値は「こんにちは、suzuki」です。
$
- 戻り値について
- bashシェルスクリプトには「戻り値」というものは基本的に存在しない。
-
解決策として関数やコマンドの「実行結果を直接変数に代入する」という手段をとることになる。
- 「return」コマンドは存在するが、あくまで終了ステータスを返しているだけで、関数の戻り値を返す機能ではないので注意しよう。