如何在bash中将变量与其他文本分开

时间:2015-11-03 23:11:01

标签: bash

这是将变量与bash中的其他文本分开的方法:

${PROJECT}_${GITCOMMIT}.tar.gz

如果PROJECT =测试 和GITCOMMIT = 222

这会给你test_222.tar.gz吗? 在涉及变量时,何时应该使用大括号{}? 还有其他方法可以将bash中的变量与文本分开吗?

2 个答案:

答案 0 :(得分:0)

是的,这是做到这一点的方法。然而,你的问题是乱码;你在两个变量表达式之间有一个下划线,所以你不会在结果字符串中找到彼此相邻的“test”和“222”。

答案 1 :(得分:0)

通常,大括号是如何在以下文本中界定变量名称中的文本。在你的情况下,

$PROJECT$GITCOMMIT.tar.gz  # test222.tar.gz

就足够了,因为启动$的{​​{1}}不能是前面参数名称的一部分。 (与GITCOMMIT之前的.相同;不能有名为tar的变量。)如果GITCOMMIT.后跟 literal 文本,大括号是必要的:

$PROJECT