Я программист, и мне лень открывать все файлы моего проекта и считать строки, но я все еще хочу знать, сколько строк. По сути, я хочу найти сумму всех разрывов строк в каталоге, который имеет подкаталоги, и только если он имеет расширение .html, .js, .css или .php. Кроме того, я хочу, чтобы он работал в Windows! И это должно быть бесплатно
3
1 ответ
3
Установите Cygwin. Убедитесь, что установлены пакеты findutils
, coreutils
и dos2unix
.
Запустите эту команду:
find . -type f -regextype posix-extended -regex '.*\.(html|js|css|php)' -print0 | wc -l --files0-from=- | tail -n 1
Команда должна правильно обрабатывать файлы как с концами Unix, так и с DOS. Если возникает проблема с конечными строками, вы можете использовать следующий вариант с переводом конечных строк:
find . -type f -regextype posix-extended -regex '.*\.(html|js|css|php)' -exec cat {} + | dos2unix | wc -l
Команды будут отсчитываться, начиная с текущего каталога. Если вы хотите указать другой каталог, поставьте его вместо .
сразу после find
.