Israeli soldiers fired at least two 155-mm cannon shells into a United Nations compound in Gaza City yesterday, injuring three workers, destroying tonnes of humanitarian assistance and putting hundreds of people to flight.