Вы можете просто сделать это
find . -exec sed -r -e 's/(^.*)Copyright \(c\) 2008 - 2009/\1Copyright (c) 2008 - 2010/g' {} \;
Я предполагаю, что вы не хотите потерять то, что находится на линии до авторского права и соответствует .*
Но, в зависимости от вашего ввода, это может быть просто:
find . -exec sed -e 's/2009/2010/g' {} \;
Обратите внимание, что в обоих случаях я не изменяю файлы, просто показываю, как будут выглядеть результаты изменения содержимого.Я предполагаю, что в вашем реальном сценарии вы захотите записать изменения обратно на диск.Для этого вам нужен ключ -i для sed, таким образом:
find . -exec sed -r -i'' -e 's/(^.*)Copyright \(c\) 2008 - 2009/\1Copyright (c) 2008 - 2010/g' {} \;
Стоит отметить, что здесь я использую синтаксис GNU sed.У меня нет блока OS X, удобного для тестирования, но BSD sed обычно использует -E вместо -r для включения расширенного регулярного выражения.