Есть проект на c++. Задача состоит в том, чтобы перевести все названия исходных файлов проекта в нижний регистр, соответственно изменить необходимые инклюды в исходных кодах (например, при изменении «Имя_Файла.H» на «имя_файла.h», то если(!) он где-то заинклюжен, необходимо #include Имя_Файла.H изменить на #include имя_файла.h. Исходных файлов проекта может быть порядка 100-500 и разложены они могут быть по разным поддиректориям.

Собственно, нужно написать такую программу, которой в качестве входных данных будет даваться адрес директории с проектом. Она может совершать изменения прямо в данной директории. Собираться данная программа должна под linux стандартными gcc компиляторами.