As Norm has said, you will find more than enough tee-shirts in every port to cover the entire ship, but I would add that you should check out a few shops before buying as European goods are usually imported and not always of the best quality.
Last: P&O Oceana December 2016
Next: NCL Jade August 2017
Then: P&O Ventura December 2017
Golden, Grand(2), Caribbean, Royal, Sea(4+1 aborted)
Adonia(4+2), Arcadia, Artemis(2), Aurora(5), Azura(2), Britannia, Oceana(4), Oriana(12), Ventura(2), Victoria(5)
QM2(2), QE2(9), QV(7), QE, Caronia(2),
Oceania Nautica, Minerva, Minerva II, Fred.Olsen(8), NCL Jade, =X= Eclipse, HAL Ryndam, Aza.Journey, CMV Magellan