find . -type f -name "*.java" -print0 | xargs -0 -n 1 svn blame | sed -n 's/^[^a-z]*\([a-z]*\).*$/\1/p' | sort | uniq -c | sort -n
Данная команда выполняет следующие действия:
1. Находит все файлы с расширением «.java» в текущей директории и всех ее поддиректориях, включая скрытые файлы.
2. Для каждого найденного файла, команда svn blame
выводит информацию о каждой строке файла, включая информацию об авторе последнего изменения.
3. С помощью sed
, выбираются только имена авторов и происходит фильтрация ненужной информации.
4. Команда sort
сортирует список авторов по алфавиту.
5. uniq -c
подсчитывает количество уникальных авторов и выводит их, с указанием количества встреч.
6. Наконец, последняя команда sort -n
сортирует результат по возрастанию количества встреч авторов.
Альтернативный вариант: можно использовать инструменты программирования, такие как скрипты на Python или Java, для обработки файлов и нахождения самых частых авторов. Это может предоставить больше гибкости и возможностей для анализа данных.