【发布时间】:2018-07-11 13:54:57
【问题描述】:
我有一个名为foo.sh的文件
如何编辑/附加以下值:
-Dhttp.proxyHost=<yourProxyHost> -Dhttp.proxyPort=<yourProxyPort>
到带有AMBARI_JVM_ARGS内容的文件
foo
bar baz
export AMBARI_JVM_ARGS="$AMBARI_JVM_ARGS -Xms512m -Xmx2048m -XX:MaxPermSize=128m -Djava.security.auth.login.config=$ROOT/etc/ambari-server/conf/krb5JAASLogin.conf -Djava.security.krb5.conf=/etc/krb5.conf -Djavax.security.auth.useSubjectCredsOnly=false"
export PATH=$PATH:$ROOT/var/lib/ambari-server
some
more things
所以想要的结果看起来像:
foo
bar baz
export AMBARI_JVM_ARGS="$AMBARI_JVM_ARGS -Xms512m -Xmx2048m -XX:MaxPermSize=128m -Djava.security.auth.login.config=$ROOT/etc/ambari-server/conf/krb5JAASLogin.conf -Djava.security.krb5.conf=/etc/krb5.conf -Djavax.security.auth.useSubjectCredsOnly=false -Dhttp.proxyHost=<yourProxyHost> -Dhttp.proxyPort=<yourProxyPort>"
export PATH=$PATH:$ROOT/var/lib/ambari-server
some
more things
到目前为止,我无法让它与 sed 一起使用。
【问题讨论】:
-
编辑脚本的源代码似乎非常错误。您的脚本已经采用了
AMBARI_JVM_ARGS的任何先前值并对其附加了一些设置 - 因此只需将AMBARI_JVM_ARGS设置为您想要包含的值即可调用它。 -
好点所以直接设置环境变量可能会更好