这个变量正在获得字符串值..我无法在其上进行任何算术操作。
考虑下面的文件 -
ABC。txt
我将其变成可变。A
a = abc.txt
它的记录如下 -
TLR | 12345
变量= $(grep -i ^tlr $ {a} | cut -d'|'-f2 | awk'{print $ 1}'(
此变量正在获得一个字符串值..我无法在其上进行任何算术操作。
请建议我如何做。
假设您正在编写bash脚本,则可以使用以下内容:
A=abc.txt
variable=$(grep -i ^TLR ${A} | cut -d'|' -f2)
echo $variable;
# Use the $((...)) syntax:
variable2=$((variable + 5))
echo $variable2
# Call the external expr program:
variable3=`expr $variable + 5`
echo $variable3
解决问题的解决方案可能是在第6行上:为了在变量上执行算术操作,您可以使用$((...))
语法;在示例中,它将5
添加到现有的variable
中。示例的输出应为:
12345
12350
12350
在第10行中,提供了一种替代解决方案,该解决方案调用Expernal expr
程序。
请参阅此网页,以获取有关Bash脚本中算术表达式的更多示例。