# Terraform常用命令
《Terraform 101 从入门到实践》这本小册在南瓜慢说官方网站 (opens new window)和GitHub (opens new window)两个地方同步更新,书中的示例代码也是放在GitHub上,方便大家参考查看。
指定插件目录初始化:
$ terraform init -plugin-dir=/Users/larry/Software/terraform/plugins
$ terraform init -plugin-dir=${TERRAFORM_PLUGIN}
将目录下所有Terraform文件格式化,包含子目录:
$ terraform fmt -recursive
非交互式apply和destroy:
$ terraform apply -auto-approve
$ terraform destroy -auto-approve
创建一个工作区并切换:
$ terraform workspace new pkslow
切换到已存在的工作区:
$ terraform workspace select pkslow
输出变更计划到指定文件:
$ terraform plan -out=pkslow.plan
根据计划执行变更:
$ terraform apply pkslow.plan
输入变量:
$ terraform apply -var="env=uat"
$ terraform apply -var-file="prod.tfvars"
其它:
$ terraform output
$ terraform console
$ terraform get
有用的别名:
alias tfmt='terraform fmt -recursive'
alias tinit='terraform init -plugin-dir=${TERRAFORM_PLUGIN}'
alias tapply='terraform apply -auto-approve'
alias tdestroy='terraform destroy -auto-approve'
alias tplan='terraform plan'