Veja Expansão de Parâmetros em man bash
:
${parameter:+word}
Use Alternate Value. If parameter is null or unset, nothing is substituted, other- wise the expansion of word is substituted.
Estou verificando um script bash que contém algo como: export PATH = $ {PATH: + $ PATH:} / usr / bin
Eu suponho que tenha a mesma saída que export PATH=$PATH:/usr/bin
. Eu fiz um echo ${PATH:+$PATH:}
apenas saída o valor de $ PATH mais um ':'. mas se eu modificá-lo para $ {PSOMETHING: + $ PATH:}, não sai nada.
minha pergunta qual é a diferença entre usar $ PATH: e $ {PATH: + $ PATH:}? algum benefício? como entender a sintaxe?
Tags bash