linux脚本数字加,linux-在bash脚本中添加数字表示“未找到”
我正在用Vim編輯器為操作系統(tǒng)基礎(chǔ)知識(shí)類制作bash腳本,并且遇到一個(gè)極其簡(jiǎn)單但令人沮喪的錯(cuò)誤,我無(wú)法將變量加在一起并將總和設(shè)置為另一個(gè)變量.我嘗試了多種格式來(lái)完成此操作,但是它要么打印出每個(gè)值,要么顯示“:未找到”錯(cuò)誤.這是我到目前為止的代碼,我只是想將每個(gè)測(cè)試的值之和設(shè)置為變量“ 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
這是我運(yùn)行它時(shí)得到的一個(gè)示例:
$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
將不會(huì)執(zhí)行任何數(shù)學(xué)運(yùn)算.谷歌搜索“ bash數(shù)學(xué)”將提供多種方法來(lái)實(shí)現(xiàn)此目的,但這是一種方法.
finalgrade=$((assignment + test1 + test2 + exam))
值得注意的是,您的實(shí)際問(wèn)題是在Assignment =旁邊有空格,這導(dǎo)致bash將其解釋為命令“ finalgrade”(未找到)而不是賦值.變量賦值在=旁邊不能有空格.
標(biāo)簽:arithmetic-expressions,bash,ubuntu,linux
來(lái)源: https://codeday.me/bug/20191112/2024165.html
總結(jié)
以上是生活随笔為你收集整理的linux脚本数字加,linux-在bash脚本中添加数字表示“未找到”的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: linux libvpx编译安装,lin
- 下一篇: linux 配置文件解析,任何可以在Li