Beberapa GNU tac
/ tail -r
opsi lain:
tac file | awk 'NF{exit};END{print NR?NR-1:0}'
Atau:
tac file | sed -n '/[^[:blank:]]/q;p' | wc -l
Perhatikan bahwa pada output:
printf 'x\n '
Yaitu, di mana ada ruang tambahan setelah baris penuh terakhir (yang beberapa orang dapat anggap sebagai baris kosong tambahan, tetapi menurut definisi POSIX teks, bukan teks yang valid), mereka akan memberikan 0.
POSIXly:
awk 'NF{n=NR};END{print NR-n}' < file
tetapi itu berarti membaca file secara penuh ( tail -r
/ tac
akan membaca file mundur dari akhir pada file yang bisa dicari). Itu memberi 1
pada output dari printf 'x\n '
.