linux脚本数字加,linux-在bash脚本中添加数字表示“未找到”

我正在用Vim编辑器为操作系统基础知识类制作bash脚本,并且遇到一个极其简单但令人沮丧的错误,我无法将变量加在一起并将总和设置为另一个变量.我尝试了多种格式来完成此操作,但是它要么打印出每个值,要么显示“:未找到”错误.这是我到目前为止的代码,我只是想将每个测试的值之和设置为变量“ finalgrade”,然后输出输出.

echo "Enter assignment mark (0 to 40): " ; read assignment

echo "Enter test1 mark (0 to 15): " ; read test1

echo "Enter test2 mark (0 to 15): " ; read test2

echo "Enter final exam mark (0 to 30): " ; read exam

finalgrade = $assignment + $test1 + $test2 + $exam

echo "Your final grade is : "$finalgrade

这是我运行它时得到的一个示例:

$sh myscript

Enter assignment mark (0 to 40):

1

Enter test1 mark (0 to 15):

2

Enter test2 mark (0 to 15):

3

Enter final exam mark (0 to 30):

4

myscript: 5: myscript: finalgrade: not found

Your final grade is :

相反,我期望最后一行是:

Your final grade is : 10

谢谢,

解决方法:

这条线

finalgrade = $assignment + $test1 + $test2 + $exam

将不会执行任何数学运算.谷歌搜索“ bash数学”将提供多种方法来实现此目的,但这是一种方法.

finalgrade=$((assignment + test1 + test2 + exam))

值得注意的是,您的实际问题是在Assignment =旁边有空格,这导致bash将其解释为命令“ finalgrade”(未找到)而不是赋值.变量赋值在=旁边不能有空格.

标签:arithmetic-expressions,bash,ubuntu,linux

来源: https://codeday.me/bug/20191112/2024165.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值