Ubuntu系统shell脚本时报错let: not found

Linux系统2阅读模式

错误描述:运行shell脚本,报错误

test.sh: 7: test.sh: let: not found

解决办法:

It's because Ubuntu uses the dash shell as default and doesn't always recognize when you try to set the shell in a script. Even if you enter "echo $SHELL" into the console it will tell you you're using /bin/bash but for some reason it's actually using dash instead.

这是因为Ubuntu默认使用dash shell,当你试图在脚本中设置shell时,它并不总是能识别出来。即使你在控制台输入"echo $SHELL",它也会告诉你你正在使用/bin/bash,但由于某些原因,它实际上使用了dash。

sudo dpkg-reconfigure dash 修改当前shell

Ubuntu系统shell脚本时报错let: not found

bash支持let和$((expression)计算和id++,id--变量后置加,后置减;++id,--id变量前置加,前置减

dash支持$((expression),不支持++,--,替代方法:id+=1,id-=1, id=id+1,id=id-1

相关命令

echo $0   显示当前使用的shell版本

dpkg-reconfigure 设置软件包类型

文章末尾固定信息

我的微信
这是我的微信扫一扫
weinxin
我的微信
我的微信公众号
我的微信公众号扫一扫
weinxin
我的公众号
 
评论  2  访客  2
    • 数字货币杂志 2

      人生,总会有不期而遇的温暖,和生生不息的希望。不管前方的路有多苦,只要走的方向正确,不管多么崎岖不平,都比站在原地更接近幸福。早安!

      • 快乐编程,快乐生活 2

        旧时光是个哑巴,唱不出我的天涯海角 https://happycodinghappylife.com

      发表评论

      匿名网友

      :?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

      确定