我使用此guide作为参考。
我能够运行命令来查找字符串的长度,比如说
expr length 'monkey brains'
按预期返回13
但是我在将结果存储在变量中时遇到问题,比如名为hi的变量。首先,我试着直接指派嗨
hi=expr length 'monkey brains'
给出了命令未找到错误。 然后,我的思考过程将命令全部包装在一个字符串中,然后使用$来评估字符串。所以我拥有的是
hi="expr length 'monkey brains'"
echo $($hi)
但这也不起作用 - expr:语法错误
有谁知道我还能在这里尝试什么,或者为什么我的方法不起作用?
答案 0 :(得分:3)
我认为这是你正在尝试做的事情。
$ expr length 'monkey brains'
13
使用命令替换将输出存储到变量:
$ len=$(expr length 'monkey brains'); echo "$len"
13
您也可以使用bash中的参数扩展执行此操作:
$ string='monkey brains'; len=${#string}; echo "$len"
13
Bash Hackers Wiki和Bash Guide都是很好的信息资源。
答案 1 :(得分:1)
你可以试试这个
hi="monkey brains"
echo -n $hi | wc -c