首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么wc加1

为什么wc加1
EN

Stack Overflow用户
提问于 2013-11-05 14:15:11
回答 2查看 3.4K关注 0票数 4

假设我有一个长度为N的词。

代码语言:javascript
复制
word0=`echo` # N = 0  
word1=`echo A` # N = 1
word2=`echo AB` # N = 2
word5=`echo ABCDE` # N = 5
word4=`echo "ABCD"` # N = 4

我使用wc获取wordN的长度,例如:

代码语言:javascript
复制
echo $word0 | wc 
   1 
echo $word1 | wc 
   2 
echo $word4 | wc 
   5

wc将+1添加到单词长度中,结果是N+1

即使是wc -cwc -m,我也得到了N+1

问:wc应该像这样工作吗?如果是这样的话,为什么要添加+1呢?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-11-05 14:22:21

尝试:

代码语言:javascript
复制
echo -n "stuff"|wc

echo添加了一个换行符,因此如果以byteschars进行计数,则至少有1条

见以下例子:

代码语言:javascript
复制
kent$  echo ""|wc -c
1

kent$  echo -n ""|wc -c
0

kent$  echo  ""|wc -m
1

kent$  echo  -n ""|wc -m
0

如果你用“单词”来计数,那就没有区别了:

代码语言:javascript
复制
kent$  echo  -n ""|wc -w
0

kent$  echo  ""|wc -w   
0
票数 9
EN

Stack Overflow用户

发布于 2013-11-05 14:19:34

我的wc打印三个值:行计数、字计数和字节计数。我猜你的只是打印字节计数。您在管道中使用的echo命令总是添加一个换行符。这是您要寻找的额外字节。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19791077

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档