我是蠢哈哈Orz
调用变量写成&sum了,改成$sum,这都能出错,害我试半天。代码不太规范
weixin_慕勒6463476
没有给这个文件执行权限, chmod 755 canshu.sh
执行上面那条命令后就可以用绝对路径了
总有一天0
双引号没加吧
用户1117628
里面相加后还只是两个字符串的“+”号拼接,加$才能转为数字
风过不留痕
$@和$*都是表示“所有参数”。带""时有如下区别
"$*" 会变成 "$1 $2 $3 $4......",注意参数间带着空格。
"$@" 会变成 "$1" "$2" "$3"......
for i in "$*" 转化为 for i in "$0 $1 $2 $3 $4......",将用户输入的参数代入,"$*"是一个长字串。
for y in "$@" 转化为 for y in "$1" "$2" "$3"...... , 代入参数后,有几个字串for循环几次,"$@"是个列表。
不带""的话,它们俩一样。
陶吉诃德
没见过第二种写法,是不是巧合。
CLLUO
你的脚本内容有错
苏小闲
#!/bin/bash
set 'apple pie' pears peaches
for i in $* /*单引号被去掉,循环单个字符输出*/
do echo $i
done
[root@luozhonghua Ex_14.02-14.31]# sh 14-14-1
apple
pie
pears
peaches
--------------------------------------------------------------
#!/bin/bash
set 'apple pie' pears peaches
for i in "$*" /*单引号被去掉,但当作字符串一次输出*/
do echo $i
done
[root@luozhonghua Ex_14.02-14.31]# sh 14-14-2
apple pie pears peaches
[root@luozhonghua Ex_14.02-14.31]#
-----------------------------------------------------------------
#!/bin/bash
set 'apple pie' pears peaches
for i in $@ /*单引号被去掉,循环单个字符输出*/
do echo $i
done
[root@luozhonghua Ex_14.02-14.31]# sh 14-14-3
apple
pie
pears
peaches
-----------------------------------------------------------------
#!/bin/bash
set 'apple pie' pears peaches
for i in "$@" /*每个位置参数都将当成一个加引号的字符串:"apple pie","pears ","peaches"*/
do echo $i
done
[root@luozhonghua Ex_14.02-14.31]# sh 14-14-4
apple pie
pears
peaches
kkkbbb
这节对的,前面有一节说反了
Varro
傲哥
"$*" 加双引号试试看