环境:Debian(Wheezy)
test.sh文件内容是:
#!/bin/bash
num1=4;
num2=5;
let result=num1+num2;
echo $result;
$SHELL 变量echo出来是:/bin/bash
执行sh test.sh结果是:
test.sh: 4: test.sh: let: not found
咋回事呢?
我以前也遇到过,我把dash卸载了。安装bash你在玩raspberrypi?网上买的?
命令未找到把PATH环境变量设为let所在文件夹路径,exportPATH=PATH:新添加的路径先在你自己的命令行里运行let看看行不行,不行说明你这就不支持let为什么连let都不支持啊直接./test.sh运行,或者bashtest.sh,sh和bash是不同的说没有let命令,执行不下去了
你当前登录用户用的不是bash,是dash吧。可以在终端下输入chsh命令查看一下当前登录的shell类型。
确实是dash和bash的问题,deb系列默认的sh是dash,如果我没猜错,你for循环也不能用,楼上的所有的建议都可行,我个人建议,直接做个软连接,sudoln-sf/bin/bash/bin/sh<divclass="ref">版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。