Shell 壳中奇怪的wc行为

Shell 壳中奇怪的wc行为,shell,Shell,这是MAC中的shell, 为什么单词计数(wc)显示错误的字符计数 sh-3.2# /Users/orly/Desktop/random.password.py 1 5 sh-3.2# /Users/orly/Desktop/random.password.py 1 | wc -m 2 sh-3.2# 文件中可能有换行符。这可以解释为什么字符数为2 附录:试试这个: hexdump -C 在“档案”上 增编2: 更详细地说: $ echo "dog" | wc -m

这是MAC中的shell, 为什么单词计数(wc)显示错误的字符计数

sh-3.2# /Users/orly/Desktop/random.password.py 1
5
sh-3.2# /Users/orly/Desktop/random.password.py 1 | wc -m
       2
sh-3.2# 

文件中可能有换行符。这可以解释为什么字符数为2

附录:试试这个:

hexdump -C
在“档案”上

增编2:

更详细地说:

$ echo "dog" | wc -m
   4
$ echo "dog" | hexdump -C
00000000  64 6f 67 0a                                       |dog.|
00000004

有意义吗?

字符计数正确:

$ echo 5 | od -c
0000000   5  \n
0000002
$ echo 5 | wc -m
2
正在输出两个字符,一个是“5”,一个是“\n”


与之相反:

$ echo -n 5 | od -c
0000000   5
0000001
$ echo -n 5 | wc -m
1