偶然地,我发现这wc
取决于从bash获取输入的方式而有所不同:
$ s='hello'
$ wc -m <<<"$s"
6
$ wc -c <<<"$s"
6
$ printf '%s' "$s" | wc -m
5
$ printf '%s' "$s" | wc -c
5
这是-IMHO令人困惑的-行为记录在某处吗?wc
在这里算什么-这是假定的换行符吗?
或者,更好
—
罗斯兰
xxd -g1
。
我希望
—
user541686 '18
printf "$s"
这不是您的实际脚本...希望您的意思是printf "%s" "$s"
由于对printf的评论太多,因此我编辑了帖子以反映最佳实践。
—
rexkogitans '18
od -c
查看自己所拥有的。