1.2.7. 在值中使用特殊字符


红帽构建的 Keycloak 依赖于 Quarkus 和 MicroProfile 来处理配置值。请注意,支持值表达式。例如,${some_key} 评估为 some_key 的值。

要禁用表达式评估,\ 字符作为转义字符。特别是,当它们似乎定义表达式或重复时,必须使用它来转义 $ 字符的使用。例如,如果您希望配置值 my$password,请改为使用 my\$\$password。请注意,在使用大多数 unix shell 时,\ 字符需要额外的转义或引用,或者在属性文件中出现时。例如,bash 单引号保留单引号 --db-password='my\$\$password'。此外,使用 bash 双引号时,您需要额外的 backslash --db-password="my\\$\\$password"。在属性文件中类似,反斜杠字符也必须被转义:kc .db-password=my\\$\\$password

特定于 Windows 的注意事项

在配置值中指定 Windows 文件路径时,反斜杠也必须被转义。例如,如果要指定路径 C:\path\to\file,您应该将其写为 C:\\path\\to\\file。或者,您可以使用不需要转义的正斜杠: C:/path/to/file

当使用 PowerShell 和值包含像逗号一样的特殊字符时,请使用双引号:

.\kc.bat start --log-level='"INFO,org.hibernate:debug"'

PowerShell 以不同的方式处理引号。它将解释引号的字符串,然后再将其传给 kc.bat 脚本,从而删除外部引用字符。因此,需要额外的引号层来保留值结构。否则,逗号将解释为分隔符。在 Windows CMD 中,您可以直接使用双引号。

Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

关于红帽文档

Legal Notice

Theme

© 2026 Red Hat
返回顶部