You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何正确重置或清空Terraform默认workspace的tfstate文件?

Terraform default workspace空状态重置方案

前置操作

先切换到目标default workspace:
terraform workspace select default

操作前务必备份原有state,避免数据误删:
terraform state pull > default_backup.tfstate

可用快速方案

方案1:直接推送空state(最快,一步完成)

Terraform允许直接强制推送符合格式的state文件覆盖现有状态,你可以直接生成标准的空state结构推送即可。
如果你的环境有jq和uuidgen工具,可直接执行单行命令:

terraform state push -force <(echo '{"version": 4, "terraform_version": "'$(terraform version -json | jq -r '.terraform_version')'", "serial": 1, "lineage": "'$(uuidgen)'", "outputs": {}, "resources": []}')

如果没有对应工具,手动创建empty_state.json文件,填入以下内容(替换对应字段值):

{
  "version": 4,
  "terraform_version": "你当前使用的Terraform版本号",
  "serial": 1,
  "lineage": "任意随机生成的UUID字符串",
  "outputs": {},
  "resources": []
}

执行推送命令:
terraform state push -force empty_state.json

方案2:批量删除所有state条目(无需手动构造state结构)

不需要单独执行数百次terraform state rm,通过管道批量拉取资源列表执行删除即可:
terraform state list | xargs -L 1 terraform state rm

补充说明

Terraform官方目前没有内置terraform state reset这类直接重置命令,上述两个是社区通用的标准实现方案,均可以达到将workspace重置为无任何资源的初始状态的效果。


内容的提问来源于stack exchange,提问作者Andrii Abramov

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 04:15:07