为什么字符数是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