Bash-$ PATHおよび$ {PATH}
-
06-07-2019 - |
質問
$ PATHまたは$ {PATH}としてPATHなどの環境変数を使用することの違いは何ですか?
解決
ほとんどの場合、違いはありません。重要なのは、展開後に末尾のテキストを含める場合のみです。たとえば、 PATH
に文字列 FOO
(実際には有効なパスではありませんが、これは一例です)が含まれていて、文字列 FOOBAR
。もしそうなら
$PATHBAR
PATHBAR
という名前の変数の展開が得られますが、これはおそらく望んでいないものです。もしそうなら
$PATH BAR
FOO
と BAR
の間にスペースができますが、これも必要なものではありません。解決策は中括弧を使用することです:
${PATH}BAR
これにより、 FOOBAR
が得られます。
他のヒント
PATH
は環境変数の名前、 $ PATH
および $ {PATH}
はそれらにアクセスする方法です。 $ {PATH}
という形式は、 echo $ {PATH} b
のような構成要素を許可するために使用されますが、 $ PATHb
を使用すると失敗します。また、 bash
では、 manページについて詳しく説明します。
あなたの場合、違いはありませんが、-状況を考えてみましょう:2つの変数があります:
$FOO = "YA"
$YADA = "bar"
then $ {$ FOODA}
は何も提供しませんが、 $ {$ {FOO} DA}
は" bar"を提供します。
所属していません StackOverflow