【发布时间】:2020-09-21 12:22:27
【问题描述】:
当我们的密码带有特殊字符时,无法使用 gfsh 控制台连接到启用了身份验证的 gemfire 集群。使用以下命令登录 gemfire 集群
gfsh -e "connect --locator=localhost[13120] --user=$(getProperty 'AUTH_USER') --password=$(getProperty 'AUTH_PASSWORD')"
密码类似于 'P*Q8!j6c'。我试图逃避'!和 '\!'。但是没有用。当我手动打开 gfsh 控制台并从 shell 脚本手动提供它时,它对我来说工作正常。
如果您能帮我传递密码参数,那将是一个很大的帮助。
【问题讨论】:
-
在 bash 下对我来说似乎工作正常。尝试使用 shell 调试运行 gfsh: bash -x gfsh ... 然后查看它在最后一行打印的内容。这将显示您的命令参数是如何扩展的。例如我的显示:` + /Library/.../bin/java -Dgfsh=true -Dlog4j.configurationFile=classpath:log4j2-cli.xml -classpath '
/lib/gfsh-dependencies.jar :/Users/jdeppe/workspace/gemfire-develop/open/geode-assembly/build/install/apache-geode/extensions/*' org.apache.geode.management.internal.cli.Launcher -e 'connect --user =foo*! --password=foo*!' `
标签: shell scripting gemfire gfsh