问题
Counting a line with 4 characters with no new line character:
ACTG
wc -m
gives me 5. With echo, I can fix this problem so
echo -n 'ACTG' | wc -m
But if ACTG
is in a text file with no new line character, I get 5. Why is that so?
$ ls -l file
-rw-rw-r-- 1 user user 5 Feb 11 15:27 file
$ hexdump -C file
00000000 41 42 43 44 0a |ABCD.|
00000005
回答1:
As hexdump has shown you, whatever editor you are using is adding a '\n' or 0x0A (new line) character at the end of the line when you save the file, even if you aren't writing one explicitly.
See: http://www.asciitable.com/
来源:https://stackoverflow.com/questions/35341207/wc-m-in-unix-adds-one-character