我知道这是一个非常愚蠢的问题,但我该怎么做:
nlength=$(expr length $(route -n|grep ^0.0.0.0|cut -d' ' -f 10))"-1
等于10 目前如果我运行此命令,它将nlength设置为" 11-1" 我必须首先将字符串转换为值,然后才能工作吗? 很抱歉问这么愚蠢的问题。
答案 0 :(得分:2)
如果不使用expr
,bc
或内部((...))
之类的任何实用工具,您不能仅对BASH命令进行算术运算。
您的命令可以简化为:
nlength=$(route -n | awk '/^0\.0\.0\.0/{print ($10-1)}')