これら2つのコマンドラインの違いは何ですか?Linuxエクスポートコマンドの構文
export PATH=/usr/local/something/bin${PATH:+:${PATH}}
export PATH=$PATH:/usr/local/something/bin/
Ubuntu 16.04コマンドシェルを使用しています。
これら2つのコマンドラインの違いは何ですか?Linuxエクスポートコマンドの構文
export PATH=/usr/local/something/bin${PATH:+:${PATH}}
export PATH=$PATH:/usr/local/something/bin/
Ubuntu 16.04コマンドシェルを使用しています。
larsksさんのように、違いはPATHを追加する実行ファイルが最初に一致するかどうか、既存のPATHを使い果たしたかどうかによって異なります。同じものを指定した2つの実行可能ファイルがある場合、または速度が重要な場合は重要です。
まさに中括弧の機能は何ですか? –
私が知っているかどうかはわかりませんが、私の推測は、それが既存の変数の補間の一種であるということです。あなたが行を実行するときには、あなたが右にあるシェルに影響を与えます。私はそれを試し、あなたのPATHに何が起こるか見るでしょう。あなたがいた場所に戻るためにbash(type bash)を実行するだけです。 – rreck
1つは '$ PATH'に値を付加し、もう1つは値を付加します。 – larsks