diff --git a/command/format/state.go b/command/format/state.go
index <HASH>..<HASH> 100644
--- a/command/format/state.go
+++ b/command/format/state.go
@@ -74,7 +74,11 @@ func State(opts *StateOpts) string {
 		for _, k := range ks {
 			v := m.OutputValues[k]
 			p.buf.WriteString(fmt.Sprintf("%s = ", k))
-			p.writeValue(v.Value, plans.NoOp, 0)
+			if v.Sensitive {
+				p.buf.WriteString("(sensitive value)")
+			} else {
+				p.writeValue(v.Value, plans.NoOp, 0)
+			}
 			p.buf.WriteString("\n")
 		}
 	}
diff --git a/command/format/state_test.go b/command/format/state_test.go
index <HASH>..<HASH> 100644
--- a/command/format/state_test.go
+++ b/command/format/state_test.go
@@ -219,7 +219,7 @@ map_var = {
     "first"  = "foo"
     "second" = "bar"
 }
-sensitive_var = "secret!!!"
+sensitive_var = (sensitive value)
 string_var = "string value"`
 
 func basicState(t *testing.T) *states.State {
Hide sensitive outputs in terraform show