Does anyone have a script to change every schedule, in every policy, to have a retention of inifinity?
No - And I don't think anyone has one ready. Instead of changing the schedules to infinity change the retention level to infinity. In that way the weekly backup is not stored for 3 month anymore but to infinity.
In Netbackup a retention has a retention level of 0 - 24 (see bpretlevel).
To change the retention level go to :
GUI -> Host Properties -> Master Servers -> Properties -> Retention Periods.
Remember to save the current layout until legal holds ends.
Assumption is the mother of all mess ups.
If this post answered your'e qustion - Please mark as a soloution.
if you are on 7.5 why not to use Search feature to apply legal hold on item which requires hold... Let that data be spreaded amongst multiple media , NBU search would take care of it, it would ensure media won't get expired, or would allow to do so by means of bpexpdate (accidentialy.intentionaly)