Lebanese gunmen greeted an edict from the leader of Hezbollah banning the firing of celebratory shots in the air - with a volley of gunfire.

In a televised speech whose opening remarks were greeted with a customary staccato round of shots in central Beirut, Sayyed Hassan Nasrallah criticised the phenomenon which he said was dangerous and provocative.

"On religious holidays, people shoot in the air, on political occasions, they shoot in the air, at funerals of martyrs, they shoot ... when someone graduates from school, they shoot," the Hezbollah leader said.

Nasrallah said he had consulted with Shi'ite Muslim clerics in Iran and Iraq, who ruled that the practice was 'haram', or forbidden in Islam. Several times in his speech he urged an end to it.

At the end of his hour-long speech however, the familiar sound of gunfire echoed around the centre of the Lebanese capital. But in the Hezbollah stronghold of southern Beirut, residents said discipline reigned and the streets were quiet.

Hezbollah was set up in the 1980s to fight Israeli occupation and is now fighting alongside President Bashar al-Assad's forces in Syria's civil war. The movement is part of a fragile power balance in the caretaker government of ethnically divided Lebanon.