Antworten:
Der Linux / Unix-Befehl "line count" wc -l
hat eine Windows-Entsprechung von find /c /v ""
.
Laut Raymond Chen von The Old New Thing funktioniert dies seitdem als solches
Es ist eine Besonderheit des
find
Befehls, dass die Nullzeichenfolge als nie passend behandelt wird.
Der inverted ( /v
) count ( /c
) zählt somit effektiv alle Zeilen; daher die Zeilenanzahl.
So zählen Sie die Anzahl der geänderten Dateien in einer Subversion-Arbeitskopie:
svn status -q | find /c /v ""
Ein solcher Befehl kann verwendet werden, um einen Build als "unsauber" zu markieren, wenn der Zähler nicht vorhanden ist 0
, dh wenn in der Arbeitskopie nicht festgeschriebene Änderungen vorgenommen wurden.
So ermitteln Sie die Zeilenanzahl aller Ihrer Java-Dateien:
(for /r %f in (*.java) do @type "%f") | find /c /v ""
Der Befehl find /c /v ""
kann bei Bedarf auch zu einer Batch-Datei hinzugefügt werden. Denken Sie daran, die %
Zeichen in Batch-Dateien zu duplizieren .
Power Shell
Eine funktionierende PowerShell-Entsprechung ist Measure-Object -line
mit einigen zusätzlichen Formatierungen erforderlich, z. B. (Verzeichnisliste zur Vereinfachung).
(ls | Measure-Object -line).Lines
So ermitteln Sie in PowerShell die Zeilenanzahl aller Java-Dateien:
type *.java | Measure-Object -line
findstr / n / r.
Dies ist ein begrenzter regulärer Ausdruck, daher zeigt / n die Zeilennummer der Übereinstimmung und "." Stimmt mit einem beliebigen Zeichen überein.
wc
( nawc.exe