アプリ版:「スタンプのみでお礼する」機能のリリースについて

bashの変数の参照において、
if [ "${PS1-}" ]; then
の変数PS1の最後の「-」は何を意味するのでしょうか?

A 回答 (1件)

man bashより:


以下の形式で、 bash はパラメータが設定されているか、空ではないかを調べます。 コロンを省略した場合には設定されているかどうかのみを調べます。

${parameter:-word}
デフォルトの値を使います。 parameter が設定されていないか空文字列であれば、 word を展開したものに置換されます。そうでなければ、 parameter の値に置換されます。
==================================

ということから、
PS1と-の間にコロンが無いので、「PS1という変数が設定されていればその値に。設定されていなければ - の後の値(この場合は空)」になります。

"${PS1}" だけであっても、「PS1という変数が設定されていればその値に。設定されていなければ空」になるので、結果は同じです。
    • good
    • 0
この回答へのお礼

詳しい説明、ありがとうございます。

お礼日時:2022/06/06 10:46

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!