Подтвердить что ты не робот

Найти количество строк в проекте с помощью powershell

Я пытаюсь найти способ подсчитать общее количество строк во всех исходных файлах проекта, который у меня есть. Я пробовал piping dir -r -name в measure-object -line, но это просто подсчитывает количество файлов, которые у меня есть.

Кто-нибудь имеет script для этого?

4b9b3361

Ответ 1

Спасибо всем, кто ответил. То, как я закончил это, было

dir . -filter "*.cs" -Recurse -name | foreach{(GC $_).Count} | measure-object -sum

Ответ 2

Get-ChildItem -Filter "*.cs" -Recurse | Get-Content | Measure-Object -line

Ответ 3

Get-ChildItem . -Include *.txt -Recurse | foreach {(Get-Content $_).Count}

Сжатие бит с псевдонимами:

GCI . -Include *.txt -Recurse | foreach{(GC $_).Count}

Приведем результаты, подобные этому:

Lines Words               Characters              Property
----- -----               ----------              --------
   21
   40
   29
   15
  294
   13
   13
  107

EDIT: Изменено для рекурсии через подпапки.

EDIT 2: Удалено использование объекта измерения.

Ответ 4

dir **. txt -recurse | выберите Fullname, @{ name= "LineCount"; выражение = {@(get-content $_. fullname).count}}

Ответ 5

Я просто немного устарел и обнаружил, что эта команда действительно рекурсивно измеряет все файлы С#:

Get-ChildItem -Filter *.cs -Recurse | Get-Content | Measure-Object -Word -Line -Character

Ответ 6

Печать имени файла и количества строк:

Get-ChildItem -re -in "*.cs" |
Foreach-Object { 
    $fileStats = Get-Content $_.FullName | Measure-Object -line
    $linesInFile = $fileStats.Lines
    Write-Host "$_=$linesInFile" 
}