Windows下Terraform仅识别永久环境变量,临时TF_VAR变量失效求助
解决Windows命令提示符下Terraform会话级TF_VAR环境变量不生效的问题
问题出在你写的set命令格式上——变量名和等号之间不能有空格。你当前的写法会创建带空格的变量名(比如TF_VAR_env_name ,注意末尾的空格),而Terraform只会识别不带空格的TF_VAR_env_name,自然读不到正确的变量值。
正确的设置命令
把变量名、等号、值之间的空格全部去掉,写法如下:
set TF_VAR_env_name="dev" set TF_VAR_region="eu-west-2" set TF_VAR_role_arn="arn:aws:iam::....."
如果变量值里没有空格,引号也可以省略:
set TF_VAR_env_name=dev set TF_VAR_region=eu-west-2 set TF_VAR_role_arn=arn:aws:iam::.....
验证变量是否设置成功
设置完成后,在同一个命令提示符窗口里执行以下命令,检查以TF_VAR_开头的环境变量是否正确存在:
set TF_VAR_
如果能看到你设置的变量(无多余空格),再执行terraform plan或terraform apply就能正常读取这些会话级变量了。
内容的提问来源于stack exchange,提问作者PushpikaWan
相关产品推荐
相关产品推荐

