为什么字符数是4?
echo abc|wc -c
输出
4
输出应该是3,因为字符数是3。
它还计算换行符,尝试
[~]> echo -n abc|wc -c
3
-n告诉echo不要打印换行符。
echo在其输出的末尾添加一个换行符,该换行符按 . 计为一个字符wc -c。您可以使用echo -n省略换行符,并获得您期望的结果:
[mureinik@mureinik ~]$ echo -n abc | wc -c
3
来自man wc:
wc - 打印每个文件的换行符、单词和字节数
正如其余答案所示,新行也算作字符。
看:
$ echo "abc" | wc
1 1 4
^
characters
$ printf "abc" | wc
0 1 3
^
characters