Zeilen Zähler

Fügen Sie Text, Quellcode, eine Protokolldatei oder eine CSV ein, und der Zähler gibt die Gesamtanzahl der Zeilen, nicht leere Zeilen, leere Zeilen, einzigartige Zeilen und doppelte Zeilen zurück. Praktisch, wenn ein Recruiter fragt: “Wie viele LOC sind in diesem Repo?”, wenn Sie wissen müssen, wie viele Zeilen eine CSV hat, ohne sie in Excel zu öffnen, oder wenn Sie eine Wortliste auf Duplikate überprüfen möchten, bevor Sie sie in ein Skript einspeisen.

So zählen Sie Zeilen

  1. 1

    Inhalt einfügen

    Bis zu einigen Megabyte Text, Protokoll, Quelldatei, Markdown, Liste.

  2. 2

    Die Aufschlüsselung lesen

    Gesamt-, nicht leere, leere, einzigartige und doppelte Zählungen werden gleichzeitig angezeigt.

  3. 3

    Entscheiden, was zählt

    Kommentare, nachfolgende Leerzeilen, Leerzeilen zwischen Abschnitten, Ihr Anwendungsfall entscheidet.

  4. 4

    Auf die Zählung reagieren

    Größe des Imports, Duplikate entfernen, trimmen oder die Zahl als Beweis melden.

Was tatsächlich als Zeile zählt

Verschiedene Werkzeuge geben unterschiedliche “Zeilenanzahlen” für dieselbe Datei an, da sie bei drei Punkten unterschiedliche Entscheidungen treffen.

Die drei Mehrdeutigkeiten

  1. Nachfolgende Leerzeile. POSIX-Textdateien enden mit \n. Fügt die letzte Leerzeile eine zusätzliche leere Zeile hinzu? wc -l zählt Leerzeilen, sodass eine Datei mit Inhalt in einer Zeile plus einer nachfolgenden Leerzeile 1 meldet; eine Datei mit Inhalt und ohne nachfolgende Leerzeile meldet 0 (was überraschend ist). Dieser Zähler meldet “Inhaltszeilen” und ignoriert die letzte leere Zeile nach einem Terminator.

  2. Leer vs. nur Leerzeichen. Eine Zeile mit Leerzeichen oder Tabs, aber ohne sichtbares Zeichen, ist sie leer oder nicht? Der Zähler behandelt nur Leerzeichen als leer, was den meisten Editoren entspricht.

  3. Einzeilige Dateien. Eine einzeilige Datei ohne nachfolgende Leerzeile ist immer noch 1 Zeile.

Zählerausgaben erklärt

Metrik Definition
Gesamtzeilen Alle Zeilen, einschließlich Leerzeilen, bis zur letzten nicht leeren Zeile
Nicht leer Zeilen mit mindestens einem nicht-leeren Zeichen
Leer Zeilen, die leer oder nur aus Leerzeichen bestehen
Einzigartig Unterscheidbare nicht leere Zeilen, Groß-/Kleinschreibung beachten
Duplikate Nicht leere Zeilen, die mehr als einmal erscheinen (Anzahl der Duplikate)

Häufige Anwendungsfälle

  • Wortliste dedup, fügen Sie eine Wortliste ein, sehen Sie die Anzahl der Duplikate und führen Sie sie dann durch einen Duplikator.
  • CSV-Zeilenanzahl, fügen Sie den Dateikörper ein; ziehen Sie 1 für die Kopfzeile ab, um die Datenzeilen zu erhalten.
  • Protokollanalyse, überprüfen Sie, ob ein rotiertes Protokoll die erwartete Anzahl an Einträgen hat.
  • Quell-Datei LOC, schnelle “Wie viele Zeilen sind in dieser Datei” ohne ein IDE zu öffnen.
  • E-Mail-Listen-Hygiene, sehen Sie, wie viele Adressen Duplikate sind, bevor Sie eine Kampagne senden.

LOC ist nicht Produktivität

Die Zeilenanzahl von Quellcode ist ein grobes Maß. Ein dichtes, gut strukturiertes Modul mit 100 Zeilen kann schwieriger zu schreiben und zu warten sein als ein ausuferndes Modul mit 1.000 Zeilen. Verwenden Sie Zeilenanzahlen für Umfangsschätzungen (in ein Kontextfenster passen, Ausgabe seitenweise gestalten, Dateigrößen vergleichen) anstelle von Leistungsbewertungen.

Unicode und Zeilenabschlüsse

Der Zähler normalisiert \r\n, \r und \n zu einer einzigen Leerzeile, bevor er zählt, sodass Windows-, klassische Mac- und Unix-Zeilenenden alle dasselbe Ergebnis liefern. Unicode-Zeilenseparatoren (U+2028) und Absatzseparatoren (U+2029) werden ebenfalls als Trennzeichen behandelt.

Häufig gestellte Fragen

wc -l zählt Leerzeilen, sodass eine Datei mit Inhalt und ohne letzte Leerzeile eine Zeile weniger meldet. Dieser Zähler meldet “Anzahl der Inhaltszeilen”, was den meisten Statusleisten von Editoren entspricht.

Ja, Zeilen, die nur aus Leerzeichen oder Tabs bestehen, zählen als leer, nicht als nicht leer. Das entspricht VS Code, Sublime und den meisten Git-Workflows.

Ja. “Hallo” und “hallo” zählen als unterschiedliche einzigartige Zeilen. Wenn Sie eine groß-/kleinschreibungsunempfindliche Duplikation wünschen, konvertieren Sie Ihre Eingabe zuerst mit einem Groß-/Kleinschreibungsumwandler in Kleinbuchstaben.

Nein, der Zähler liest die Eingabe lokal und nichts wird hochgeladen oder protokolliert.

Verwandte Tools

Tool in anderen Sprachen verfügbar