如何在travis ci加密环境变量中转义单个空格?

时间:2019-05-18 01:37:22

标签: travis-ci

Travis CI的用户文档中有一节介绍如何转义安全环境变量。似乎不适用于单个空间。空格字符需要做些特殊的事情吗?

我试图像这样加密我的sql server连接字符串

travis encrypt AzureSqlServerPath="Server=<server>\;Initial\ Catalog=<database>\;Persist\ Security\ Info=False\;User\ ID=<user>\;Password=<password>\;MultipleActiveResultSets=False\;Encrypt=True\;TrustServerCertificate=False\;Connection\ Timeout=30\;" --add --com

该变量设置正确,但是空格不能正确转换为环境变量。它将在遇到的第一个空格处截断字符串。

Server=<server>;Initial 

1 个答案:

答案 0 :(得分:0)

我终于可以通过反复试验得到一些东西。似乎解决方案是在引号内使用引号并转义内部引号。这样,我就不必在连接字符串中转义任何其他特殊字符。

travis encrypt AzureSqlServerPath="\"Server=<server>;Initial Catalog=<database>;Persist Security Info=False;User ID=<user>;Password=<password>;MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=False;Connection Timeout=30;\"" --add --com