Một số GNU tac
/ tail -r
tùy chọn khác:
tac file | awk 'NF{exit};END{print NR?NR-1:0}'
Hoặc là:
tac file | sed -n '/[^[:blank:]]/q;p' | wc -l
Lưu ý rằng trên đầu ra của:
printf 'x\n '
Đó là, nơi có thêm một khoảng trắng sau dòng đầy đủ cuối cùng (mà một số người có thể coi là một dòng trống thêm, nhưng theo định nghĩa POSIX của văn bản, không phải là văn bản hợp lệ), những cái đó sẽ cho 0.
POSIXly:
awk 'NF{n=NR};END{print NR-n}' < file
nhưng điều đó có nghĩa là đọc tệp đầy đủ ( tail -r
/ tac
sẽ đọc tệp ngược từ cuối trên các tệp có thể tìm kiếm). Điều đó mang lại cho 1
đầu ra của printf 'x\n '
.