Trump said the Pentagon had selected three sites in Iran for bombing. (FILE PHOTO)

President Donald Trump said Friday he is in "no hurry" to bomb Iran, revealing that US forces were "cocked and loaded" to retaliate after the downing of a US spy drone but that he called them back in order to avoid mass casualties.

"I am in no hurry," Trump said in a series of tweets detailing his thought process during the late Thursday decision to send, and then recall, US forces.

"10 minutes before the strike I stopped it," the president said, explaining that a general had told him to expect 150 deaths on the Iranian side and that he had concluded this would not be a "proportionate" response.

Trump said the Pentagon had selected three sites in Iran for bombing.

The revelations by Trump were highly unusual for a president and they gave new insight into the long-running internal debate at the White House over its Middle East policy.

Trump campaigned for the presidency on a platform of extricating the United States from military quagmires.

However, some of his closest advisers, such as national security adviser John Bolton and Secretary of State Mike Pompeo, are said to favor a far more muscular US strategy.

Trump has labeled Iran a danger and has sought to wreck a complex international accord on rewarding the country for allowing verification of its nuclear industry, primarily by unilaterally withdrawing from the deal.

At the same time, Trump has repeatedly sought to downplay moments of tension, repeating his reluctance to see the dispute escalate to military conflict.

That volatile situation came to a head this week when Iran shot down a large US surveillance drone.

Tehran says the drone had entered its airspace, while Washington says it was in international waters.

On Friday, just hours before his aborted bombing strike, Trump warned that Iran had made "a big mistake" -- only to quickly add that he thought the drone downing may have been unintentional.