Yes, this wheel has been invented scores of times over the last 10 years. But boy is this one shiny.

$ find ./ | grep -v svn | xargs grep '\-\>Promotion'But today I couldn't get that working. Something with xargs escaping of -> just refused to fly.
# cpan App::AckAnd it found what I was looking for with zero fuss!
$ ack '\-\>Promotion'
Control/SG.pmHoly buckets! That is AWESOME! Thanks Andy!
335: $self->Promotion($promo_hash);
View/Web/Phoenix/lib/Phoenix/Controller/SG.pm
2844: $c->log->debug("you have these PromotionCode's already: " . (join ", ", keys %{$sg->Promotion}));
2846: unless ($sg->Promotion->{$preauth}) {