shell 脚本计算字符时出现问题

shell 脚本计算字符时出现问题

我正在尝试学习基础知识,但我的脚本在计算用户输入的字符时遇到了问题。这是我的脚本,有人可以指出我哪里出错了吗?

#!/bin/bash

echo "Enter a word!"    
read INPUT_STRING   
len= echo $INPUT_STRING | wc -c 
echo "Your character length is " $len
exit

答案1

每一个开始都是艰难的:

#!/bin/bash
read INPUT
echo $INPUT
len=$(echo -n "$INPUT" | LC_ALL=C.UTF-8 wc -m)
echo $len

具体来说,周围不能有空格=,并且内部需要包含一个单独的命令$(...)。另外,您可能希望"使用此语法将变量写在引号中"${INPUT}",这可以确保变量不会意外地与后面的内容连接,并且可以包含特殊字符(例如换行符\n)。

答案2

我认为最好是使用

len=${#INPUT_STRING}

否则由 echo 添加的行尾字符也将被计入。除非那是你想要的。

相关内容