Einfaches Hinzufügen von Zeilennummern zu einer Textdatei mit der Befehlszeile

Anonim

Brian fragt: „Ich muss einer Textdatei Zeilennummern hinzufügen. Ich meine nicht Zeilennummern im Texteditor, ich meine das Hinzufügen einer Nummer neben jedem Element in einer Textdatei. Kann ich das automatisieren oder muss ich die Datei manuell bearbeiten, indem ich 1, 2, 3 eintippe und verrückt werde?“

Ja, Sie können Zeilennummern ganz einfach fest in eine Textdatei codieren … wir zeigen Ihnen genau, wie es geht! Um es ganz klar zu sagen, fügen Sie auf der linken Seite jeder neuen Textzeile eine Zählzeilennummer hinzu, wobei Sie jeder Zeile die entsprechende entsprechende Nummer voranstellen.Dadurch wird es fest in die Textdatei codiert, was bedeutet, dass es sich von der einfachen Anzeige von Zeilennummern in einer App wie TextWrangler, VIM oder BBEdit unterscheidet.

Um zu beginnen, rufen Sie das Terminal auf und Sie sollten an der Eingabeaufforderung Folgendes tun:

Mit cat Zeilennummern zu einer Textdatei hinzufügen

Dies ist bei weitem die einfachste Methode: cat -n file > file_new

Ersetzen Sie einfach „file“ durch den Dateinamen, dem Sie Zeilennummern hinzufügen möchten, und ändern Sie „file_name“ in den exportierten Namen.

Sie können auch den ‘nl’-Befehl wie folgt verwenden:

Hardcore-Zeilennummern in eine Textdatei mit dem nl-Befehl

Ersetzen Sie „filename“ und „filenamenumbered“ erneut durch den entsprechenden Namen der Datei, der Sie Zeilennummern hinzufügen:

nl -ba -s ': ' Dateiname > Dateiname

Das ist alles dazu! Sie können beide Tricks anwenden. Mehrere Leser mischten sich in die Kommentare ein, um einfachere Lösungen für die Nummerierung von Zeilen in einer Textdatei bereitzustellen. Sie wurden oben in der Reihenfolge der Einfachheit aufgelistet, aber wir bieten unten auch eine „awk“-Lösung an.

-

Sie können auch das Befehlszeilentool "awk" verwenden, aber es ist etwas komplexer als die oben genannten Methoden. Wenn Sie interessiert sind, starten Sie das Terminal und los geht's.

Stellen Sie zunächst sicher, Ihre Textdatei zu sichern für den seltenen Fall, dass etwas schief geht (z. B. ein Syntaxfehler). Nachdem Sie nun eine Sicherungskopie der betreffenden Textdatei erstellt haben, schreiben wir die Zeilennummern direkt hinein:

"

awk &39;{printf(%5d : %s\n, NR, $0)}&39; Dateiname > Dateinummeriert "

Dateiname ist die Originaldatei, und Dateinamenummeriert ist, wie Sie die Ausgabe des awk-Befehls mit angehängten Zeilennummern nennen möchten. Ihr ausgegebenes Textdokument hat jetzt eine Zahl, gefolgt von einem Doppelpunkt vor jedem Zeilenelement:

1: Zeile mit Wörtern 2: Zeile mit Wörtern 3: Zeile mit Wörtern

Ihre ursprüngliche Textdatei sollte unverändert sein, aber wenn Sie einen Syntaxfehler gemacht haben, wird Ihnen die von Ihnen erstellte Sicherungsdatei den Tag retten. Dieser Befehl funktioniert in jedem Unix-Betriebssystem, das awk-Unterstützung bietet. Fühlen Sie sich also frei, diesen Befehl in FreeBSD, Linux, Mac OS X oder einer anderen Variante auszuführen, die Ihnen einfällt.

Einfaches Hinzufügen von Zeilennummern zu einer Textdatei mit der Befehlszeile