【20.スクリプトからの戻り値を渡す】ざっくりわかる「シェルスクリプト」

関数からの戻り値の受け渡し

関数からの戻り値の受け渡し:
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」コマンドは存在するが、あくまで終了ステータスを返しているだけで、関数の戻り値を返す機能ではないので注意しよう。

書籍の紹介

【はじめから】ざっくりわかるシェルスクリプト3

【はじめから】ざっくりわかるシェルスクリプト3

【21.ディレクトリを作成する】ざっくりわかる「シェルスクリプト」

【21.ディレクトリを作成する】ざっくりわかる「シェルスクリプト」