bashスクリプトでは、できる限り変数を関数にローカルにして、以下のような関数から必要なものを渡そうとします
#!/bin/bash
function FUNCTION() {
local LOCAL="value"
echo "$LOCAL" # return this variable
}
GLOBAL=$(FUNCTION)
echo "$GLOBAL"
しかし、関数自体のエコーを含めながらこれを行うことができるので、関数に出力する独自のメッセージがある場合、それらを変数でキャッチする必要はありません
#!/bin/bash
function FUNCTION() {
local LOCAL="value"
echo "$LOCAL" # return this variable
echo "This function is done now" # do not return this variable
}
GLOBAL=$(FUNCTION)
echo "$GLOBAL" # should only echo 'value'
この構文は私にとってはより身近なものです
—
TheLovelySausage
@ Arthur2e5の主な理由は、コードを検索するときに「[a-zA-Z0-9] + \(\)\ {」よりも「関数」と入力する方が簡単だからです
—
Alex Jansen
function foo()
構文を使用しているのですか?9つの少ないキーパンチでPOSIX互換性を向上できます。