我有一个包含此内容的 .sh 文件。
我将一个整数传递给 $0 中的文件
...
period=20000
period=period+($0*1000)
echo "$period"
...
我正在尝试做的是period = period + ($0 * 1000)
第二行给我一个语法错误,我想知道如何正确地做到这一点。
我尝试过使用(($0*1000))
,但没有什么区别。
我也尝试过
smth=1000*$3
period=period+smth
我得到了
20000000+1000*
脚本的参数从 开始
$1
,而不是$0
。要做数学题,需要算术扩展:
您还可以使用
以及许多其他方法。
您提到这
$0
是一个整数(我猜您的意思是$1
,因为$0
是脚本本身,但无论如何),所以@choroba 的答案很棒。概括地说,如果$1
也可以是浮点数,您可以用它bc
来进行计算,因为$((...))
只能进行整数运算。因此,您可以使用这个:($1*1000)
这里实际上不需要括号,因为乘法先于加法,但我添加了它们来处理您的评论。