2014-05-06 432 views

回答

5

其还指望换行,尽量

[~]> echo -n abc|wc -c 
3 

-n告诉echo不打印一个换行符。

2
echo

在其输出处,这是由wc -c算作一个字符的结尾添加换行符。您可以使用echo -n省略换行,并得到你期待的结果:

[[email protected] ~]$ echo -n abc | wc -c 
3 
1

man wc

WC - 打印换行符,每个文件单词,和字节计数

随着答案的其余部分表示,新线也算作字符。

参见:

$ echo "abc" | wc 
     1  1  4 
        ^
         characters 

$ printf "abc" | wc 
     0  1  3 
        ^
         characters