2013-08-26 36 views
0

我正在尝试使用OpenShift。 我有三个写方式之间的混淆:环境变量类型有什么区别

${env.OPENSHIFT_MYSQL_DB_HOST} 
${OPENSHIFT_MYSQL_DB_HOST} 

$OPENSHIFT_MYSQL_DB_HOST 

你能告诉我它们之间的区别是什么?

+0

没有区别。它们仍然指向env var OPENSHIFT_MYSQL_DB_HOST。 – zeusdeux

回答

1
${env.OPENSHIFT_MYSQL_DB_HOST} 

仅适用于JBoss应用程序的standalone.xml。 ENV。引用环境变量和不带env的$ {}引用系统属性。因此,

${OPENSHIFT_MYSQL_DB_HOST} 

in standalone.xml正在引用系统属性。在bash脚本中,虽然它会引用环境变量,因为OpenShift会为所有的盒式脚本提供所有env变量。同样

$OPENSHIFT_MYSQL_DB_HOST 

只是在bash中引用变量的另一种方法。在bash中$ var和$ {var}是可以互换的,除非变量demarkation是一个问题。例如,$ varblah与$ {var} blah不一样。