sed-Befehl mit Option -n und '$='

sed-Befehl mit Option -n und '$='

Ich möchte mit dem Befehl die Anzahl der Zeilen in einer Datei drucken sed. Ich habe dafür die folgende Zeile. Kann mir das bitte jemand genauer erklären?

sed -n '$=' myfile.txt

Antwort1

Wenn Sie einen Befehl erhalten, der funktioniert, Sie die Optionen aber nicht verstehen, verwenden Sie , man commandum weitere Informationen zu den verwendeten Optionen zu erhalten. man sedzeigt Ihnen (wenn Sie durch die Ausgabe scrollen/suchen):

   -n, --quiet, --silent

          suppress automatic printing of pattern space

Und

   =      Print the current line number.

und (die Suche nach $kann durch Voranstellen eines Backslashs erfolgen \):

   $      Match the last line.

Sie erhalten also die Zeilennummer der letzten Zeile, ohne zusätzlich die gefundene übereinstimmende Zeile (die letzte Zeile) auszudrucken, was die Standardeinstellung wäre.

Antwort2

=druckt die aktuelle Zeilennummer. $ist die letzte Zeile in der Datei. -nunterdrückt die normale Ausgabe.

verwandte Informationen