我正在处理 Bash 脚本,并且某个变量中包含的字符串的长度是我的条件之一。当前字符串是W5u7TBTzF17GGFV8DBJHvgAAAAI
. 最初,我在以下帮助下计算了字符串长度wc -c
:
$ VAR='W5u7TBTzF17GGFV8DBJHvgAAAAI'; echo "$VAR" | wc -c
28
但我的脚本条件[[ ${#VAR} -eq 28 ]]
永远不会通过。然后我决定将字符数加一。实际上字符串长度是 27 个字符,值${#VAR}
也是 27:
$ echo "${#VAR}"
27
所以我想知道 - 这种差异来自哪里?
这是行之有效的方式
echo
。现在做你得到
但是做
echo -n koko
,你会得到wc
捕获也是如此newline character
。利用以获得想要的结果。该
echo
命令将添加newline
字符,因此也会被计算在内。要删除它并获取实际计数,请使用该-n
选项。