Что такое Windows-эквивалент команды Linux/Unix wc -l
?
В основном, как вы подсчитываете количество строк, выводимых командой в командной строке Windows?
Что такое Windows-эквивалент команды Linux/Unix wc -l
?
В основном, как вы подсчитываете количество строк, выводимых командой в командной строке Windows?
Команда Linux/Unix "line count", wc -l
, имеет в Windows эквивалент find /c /v ""
.
Согласно Рэймонду Чену из The Old New Thing, это функционирует как таковое, так как
Это особая особенность команды
find
что нулевая строка обрабатывается как никогда не совпадающая.
Инвертированный (/v
) счет (/c
), таким образом, эффективно подсчитывает все строки; следовательно, количество строк.
Чтобы подсчитать количество измененных файлов в рабочей копии Subversion:
svn status -q | find /c /v ""
Такая команда может использоваться, чтобы пометить сборку как "грязную", если счетчик не равен 0
, т. Е. В рабочей копии есть незафиксированные изменения.
Чтобы получить количество строк всех ваших файлов Java:
(for /r %f in (*.java) do @type "%f") | find /c /v ""
Команда find /c /v ""
также может быть добавлена в командный файл при необходимости.
Не забудьте продублировать символы %
в пакетных файлах.
PowerShell
Рабочим эквивалентом PowerShell является Measure-Object -line
с некоторым дополнительным форматированием, например, (список каталогов для простоты),
(ls | Measure-Object -line).Lines
В PowerShell, чтобы получить количество строк всех ваших Java-файлов:
type *.java | Measure-Object -line