我正在检查一个 bash 脚本,其中包含以下内容: export PATH=${PATH:+$PATH:}/usr/bin 我假设它的输出与export PATH=$PATH:/usr/bin. 我做了一个echo ${PATH:+$PATH:}它只是输出 $PATH 的值加上一个':'。但如果我将其修改为 ${PSOMETHING:+$PATH:},它不会输出任何内容。
我的问题是使用 $PATH: 和 ${PATH:+$PATH:} 有什么不同?有什么好处吗?如何理解语法?
参见参数扩展在man bash:
Run Code Online (Sandbox Code Playgroud)${parameter:+word}使用替代值。如果参数为空或未设置,则不替换任何内容,否则替换单词的扩展。
| 归档时间: |
|
| 查看次数: |
1531 次 |
| 最近记录: |