An Israeli soldier shot and killed a Jewish man he suspected was a Palestinian "terrorist" in Jerusalem.

Soldiers deployed in Jerusalem to reinforce police demanded the man show them his ID, police spokesman Micky Rosenfeld said.

The man refused, scuffled with the soldiers and then attempted to seize one of their weapons. One soldier shot the man, who later died of his wounds, Mr Rosenfeld said.

"The soldiers had high suspicions that he was a terrorist," he said. Israeli media said the man had asked for the soldiers' IDs first, but Mr Rosenfeld was not able to confirm that detail. He said the incident is under investigation.

The incident reflected the jittery mood that has gripped Israelis amid a spate of near-daily Palestinian stabbing attacks.

Police say two Palestinians stabbed an Israeli at a bus stop on Thursday after they tried to board a bus ferrying children to school. Police shot the two men, one of whom later died while the other was seriously wounded. Police said the Israeli man was moderately wounded.

When an Arab citizen of Israel opened fire at a bus station in southern Israel on Sunday, killing an Israeli soldier and wounding several people, a private security guard shot an Eritrean migrant he thought was an attacker.

As the Eritrean lay on the ground, a mob of people cursed him, kicked him and hit him with objects. He later died. Police said the post-mortem examination showed the man died from gunshot wounds and that four suspects would appear in court over the beating.

"This is not the Wild West," Israeli opposition legislator Tzipi Livni told Israeli Army Radio. "The suspicion there is now, the fear and the hate lead to brutal and very difficult results."