Israel launched a barrage of strikes across Iran on Friday, saying it had attacked nuclear facilities and missile factories and killed a swathe of military commanders in what could be a prolonged operation to prevent Tehran building an atomic weapon.