空、未割り当て、またはエラーがある場合は、BASH変数に値を割り当てる方法は? [コピー]

空、未割り当て、またはエラーがある場合は、BASH変数に値を割り当てる方法は? [コピー]

私はこのJS課題と同等のものを探しています。

FOO = FOO || "I must have been falsey!";

ベストアンサー1

どちらかこれらの拡張課題を完了する特定の時間に応じて探していることがあります。

コロンを省略すると、設定されていないパラメータのみがテストされます。 [...]

${parameter:-word}

引数が設定されていないか空の場合、単語の拡張が置き換えられます。それ以外の場合、パラメータ値は置き換えられます。

${parameter:=word}

引数が設定されていないか空の場合、単語の拡張が引数に割り当てられます。次に、パラメータの値を置き換えます。位置パラメータと特殊パラメータはこの方法で割り当てることはできません。

初めて使用する場合にのみデフォルト値を設定するには:

some-command "${FOO:=default value}"
other-command "$FOO"  # both use "default value" if FOO was null/unset

これを明示的に作成したい場合は、次のようにします。

FOO="${FOO:-default value}"
some-command "${FOO}"

おすすめ記事