Ничто нового вообще. Цитата ниже от https://lkml.org/lkml/2011/5/29/204
Я решил просто стиснуть зубы, и назвать следующую версию 3.0. Это будет выпущено достаточно близко к 20-летней метке, которая является оправданием достаточно за меня, хотя честно, настоящая причина просто, что я не могу никакой longe rcomfortably считать целых 40.
Я особенно как:
Целое изменение нумерации было обсуждено наконец Саммит Ядра лет, и был план поднять его в этом году также. Но давайте столкнемся с ним - какой смысл того, чтобы быть главными, если Вы не можете выбрать цвет гаража для велосипедов, не держа референдум по нему? Таким образом, я просто иду весь альфа-самец и просто перенумеровываю его. Вам понравится он.
И наконец:
Таким образом, каковы большие изменения?
Ничего. Абсолютно ничто. Несомненно, у нас есть обычные два изменения драйвера третей и много случайных мер, но дело в том, что 3.0 примерно перенумеровывает, мы очень не делаем KDE-4 или Gnome-3 здесь. Никакая поломка, никакие специальные страшные новые возможности, ничто вообще как этот. Мы делали основанные на времени выпуски много лет теперь, это никоим образом не о функциях. Если Вы хотите оправдание за изменение нумерации, действительно необходимо посмотреть на основанный на времени ("20 лет") вместо этого.
Когда Вы говорите, что файлы "имена включают общее слово", я предполагаю, что Вы обращаетесь к тому, что они совместно используют .cc
расширение: если так, с помощью ответа Gilles здесь, Вы могли создать команду, которая достигнет Вашей цели:
find -type f -exec sh -c '
for file; do [ "${file##*.}" = "cc" ] &&
mv -- "$file" "${file%.cc}.ccp"; done
' -- {} +
См. этот ответ на ТАК для большего количества детали
В zsh:
autoload zmv
zmv '(**/)(*).cc' '$1$2.cpp'
В ударе ≥4:
for x in **/*.cc; do mv "$x" "${x%.cc}.cpp"; done
В любой оболочке:
find -name '*.cc' -exec sh -c 'for x; do mv "$x" "${x%.cc}.cpp"; done' _ {} +
Более простой, и портативный к более старым системам, но немного медленнее:
find -name '*.cc' -exec sh -c 'mv "$0" "${0%.cc}.cpp"' {} \;