1
我使用遠程EXEC提供商在我terraform v0.9.11模板是這樣的:如何逃避terraform中的雙引號?
...
provisioner "remote-exec" {
inline = [
"Set-ExecutionPolicy Bypass -force",
"./C:\ProgramData\Amazon\EC2-Windows\Launch\Config\Replace-FileString.ps1 -Pattern '""' -Replacement '"${var.admin_password}"' -Path LauchConfig.json"
]
...
但我在-Pattern '""'
得到一個illegal char escape
錯誤。
我要在遠程計算機上執行的命令是:"... FileString.ps1 -Pattern '""' -Replacement '"xyz"' "
PS:用\轉義像
"... FileString.ps1 -Pattern '\"\"' -Replacement '\"xyz\"' "
也不起作用。
...
這裏代表省略不相關的文字。
一切從我所看到的,它看起來像一個反斜槓應努力逃脫,當你嘗試它實際上會發生什麼 - 假設它是某種解析器錯誤?如果是這樣,我想知道這是否是terraform和sho的迴歸uld被記錄爲新的錯誤。同時,你可以使用'script'選項而不是'inline'嗎? –
@JamesThorpe當我使用了反斜槓時,我仍然得到'非法字符轉義'..我會嘗試'腳本',看看問題是否仍然存在 – Sami
只是看着那個 - 你可能需要使用['file'和'inline',因爲你有參數傳入](https://www.terraform.io/docs/provisioners/remote-exec.html#script-arguments)('admin_password') –