this is just a prototype for a single database, but it's easily adaptable i think.
I'm assuming that the current server has all the linked servers....so I thought why not search for the actual linked server name? ie "MACHINENAME\SQLEXPRESS" or whatever...to make it more specific, you could add a period to search for 'linkedserver.' instead of 'linkedserver'
It worked on a new proc i created just fine.
declare @LinkedServers table(
INSERT INTO @LinkedServers
SELECT SRV_NAME FROM @LinkedServers
from syscomments cross join @LinkedServers x
where charindex(x.SRV_NAME,syscomments.TEXT) > 1
--help us help you! If you post a question, make sure you include a CREATE TABLE... statement and INSERT INTO... statement into that table to give the volunteers here representative data. with your description of the problem, we can provide a tested, verifiable solution to your question! asking the question the right way gets you a tested answer the fastest way possible!