awk -F'|' '{print NF; exit}' stores.dat
Beenden Sie einfach gleich nach der ersten Zeile.
Sofern Sie dort keine Leerzeichen verwenden, sollten Sie | wc -w
verwenden können in der ersten Zeile.
wc
ist "Wortanzahl", die einfach die Wörter in der Eingabedatei zählt. Wenn Sie nur eine Zeile senden, wird Ihnen die Anzahl der Spalten mitgeteilt.
Dies ist eine Problemumgehung (für mich:Ich verwende awk nicht sehr oft):
Zeigen Sie die erste Zeile der Datei mit den Daten an, ersetzen Sie alle senkrechten Striche durch Zeilenumbrüche und zählen Sie dann die Zeilen:
$ head -1 stores.dat | tr '|' '\n' | wc -l