使用配置文件中的字符串值进行计算

时间:2015-12-14 08:39:21

标签: bash shell

我想从配置文件中获取时间并将其相乘。 当我把时间写成30米时,它需要m并使用30米。但是如何使用此值进行计算。案例s正在按预期工作。

 getTimeFromConfig(){
case $timestart in
*s )
echo ${timestart::-1};;
*m )
time = ${timestart::-1}
newtime= $(($time*60));;
*h )
time = ${timestart::-1}
newtime= $(($time*3600));;
esac
}

1 个答案:

答案 0 :(得分:1)

=(作业)周围不应有空格。

time = ${timestart::-1}
newtime= $(($time*60));;

应该是

time=${timestart::-1}
newtime=$(($time*60));;

同样,

time = ${timestart::-1}
newtime= $(($zeit*3600));;

应该是

time=${timestart::-1}
newtime=$(($zeit*3600));;

如果您只想打印计算值,请执行以下操作:

    echo ${newtime}

mh的每个案例陈述中。

如果您希望此函数“返回”时间,您可以使用全局变量或从函数打印并从调用者读取它:

getTimeFromConfig()结束时:

    echo ${newtime}
  }

和来电者:

timevalue=$(getTimeFromConfig)