小萌新求教
#!/bin/bashread -p "input two number " val1 val2
num = `expr $val1 + $val2`
echo $num
为什么会报这样的错误:
gawk: 致命错误: 无法以读模式打开文件“=”(没有那个文件或目录)
是不是什么配置没有做啊
阿布布 发表于 2023-2-28 19:54
是不是什么配置没有做啊
不是报程序未找到就是报这个错误
本帖最后由 dolly_yos2 于 2023-2-28 20:43 编辑
首先,赋值变量等号两边不应该有空格
其次,`` 是过时的方式,用 $() 替代
最后,expr 也是值得避免的方式,可以用 $(()) 代替
一些参考:#!/bin/bash
read -rp "input two number " val1 val2
num=$((val1+val2))
echo "$num" 本帖最后由 isdkz 于 2023-2-28 20:07 编辑
=两边不能有空格,因为空格在 linux 命令中用来隔开命令、选项和参数
#!/bin/bash
read -p "input two number " val1 val2
num=`expr $val1 + $val2`
echo $num num = `expr $val1 + $val2`
这个等号两边不能有空格 # cat 2.sh
#!/bin/bash
read -p "input two number " val1 val2
num=`expr $val1 + $val2`
echo $num
# sh 2.sh
input two number 2 4
6
# ^C
#
看起来没有问题 是不是你弄错文件了 或者没有权限 是不是你有给相应的用户权限{:10_256:} #!/bin/bash
read -p "input two number " val1 val2
num=`expr $val1 + $val2`
echo $num
正确的如上所示
页:
[1]