我最近看到一个示例,其中调用了一个命令,并将以下选项传递给env
:
TMPDIR="${TMPDIR:-/tmp}"
-
中$TMPDIR
的作用是什么?这是针对未指定版本的linux。
答案 0 :(得分:5)
$ {参数: - 字}
如果参数未设置或为null,则替换 word 的扩展。否则,参数的值将被替换。
如果它为空或未设置,则将TMPDIR
设置为/tmp
。如果您遗漏:
(例如${TMPDIR-/tmp}
,它只会测试是否未按规定设置变量:
省略冒号只会导致对未设置的参数进行测试。换句话说,如果包含冒号,运算符将测试参数的存在性及其值不为空;如果省略冒号,则运算符仅测试是否存在。
答案 1 :(得分:2)