blob: beb9782ebfd505cd924d8c96d09bc3e4bb7b8917 [file] [log] [blame]
---
page_title: 'Command: destroy'
description: >-
The terraform destroy command destroys all objects managed by a Terraform
configuration.
---
# Command: destroy
The `terraform destroy` command is a convenient way to destroy all remote
objects managed by a particular Terraform configuration.
While you will typically not want to destroy long-lived objects in a production
environment, Terraform is sometimes used to manage ephemeral infrastructure
for development purposes, in which case you can use `terraform destroy` to
conveniently clean up all of those temporary objects once you are finished
with your work.
## Usage
Usage: `terraform destroy [options]`
This command is just a convenience alias for the following command:
```
terraform apply -destroy
```
For that reason, this command accepts most of the options that
[`terraform apply`](/cli/commands/apply) accepts, although it does
not accept a plan file argument and forces the selection of the "destroy"
planning mode.
You can also create a speculative destroy plan, to see what the effect of
destroying would be, by running the following command:
```
terraform plan -destroy
```
This will run [`terraform plan`](/cli/commands/plan) in _destroy_ mode, showing
you the proposed destroy changes without executing them.
-> **Note:** The `-destroy` option to `terraform apply` exists only in
Terraform v0.15.2 and later. For earlier versions, you _must_ use
`terraform destroy` to get the effect of `terraform apply -destroy`.