这是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#
答案 0 :(得分:2)
字符数是正确的:
$ 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
答案 1 :(得分:1)
您的文件中可能有换行符。这可以解释char数为2。
ADDENDUM:试试这个:
hexdump -C
在“档案”上。
ADDENDUM 2:
更详细:
$ echo "dog" | wc -m
4
$ echo "dog" | hexdump -C
00000000 64 6f 67 0a |dog.|
00000004
有意义吗?