在bash变量上使用cut时获取“找不到命令”

时间:2018-09-25 08:41:01

标签: bash cut

bash脚本中有两个变量

hostname="ab78ascsoadp003.abc.com"
Loc=`$hostname | cut -c3,4`

我遇到错误ab78ascsoadp003.abc.com: command not found

我正在尝试使用cut command,以便$Loc获得78

3 个答案:

答案 0 :(得分:3)

虽然您可以使用cut实现这一目标,但有时坚持使用很有用:

hostname="ab78ascsoadp003.abc.com"
Loc=${hostname:3:2}
  

${parameter:offset:length} 子字符串扩展。从offset指定的字符开始扩展到参数的最大长度字符。如果省略length,则将其扩展到参数的子字符串,该字符串从offset指定的字符开始。 lengthoffset是算术表达式

     

来源:man bash

答案 1 :(得分:2)

hostname="ab78ascsoadp003.abc.com"
Loc=$(cut -c3,4 <<<"$hostname")

答案 2 :(得分:1)

您缺少echo

Loc=`echo $hostname | cut -c3,4`