awk -F'|' '{print NF; exit}' stores.dat
Berhenti tepat setelah baris pertama.
Kecuali Anda menggunakan spasi di sana, Anda seharusnya dapat menggunakan | wc -w
di baris pertama.
wc
adalah "Jumlah Kata", yang hanya menghitung kata dalam file input. Jika Anda hanya mengirim satu baris, ini akan memberi tahu Anda jumlah kolom.
Ini adalah solusinya (bagi saya:saya jarang menggunakan awk):
Tampilkan baris pertama file yang berisi data, ganti semua pipa dengan baris baru, lalu hitung baris:
$ head -1 stores.dat | tr '|' '\n' | wc -l