分页: 1 / 1
测试变量自己加1后打印结果,发现变量加1后,没有成功赋值回原变量
发表于 : 2009-01-13 12:29
由 flygun2005
我写了一个脚本,想测试变量自己加1,然后再打印结果,却发现变量加1后,没有赋值回原变量,大家可以试试:
代码: 全选
#!/bin/bash
num=1
num= expr $num "+" 1
echo "this is ${num} "
num= expr $num "+" 1
echo "aftert is ${num} "
执行结果是
2
this is 1
2
aftert is 1
Re: 测试变量自己加1后打印结果,发现变量加1后,没有成功赋值回原变量
发表于 : 2009-01-13 14:08
由 bones7456
(( num++ ))
Re: 测试变量自己加1后打印结果,发现变量加1后,没有成功赋值回原变量
发表于 : 2009-01-14 17:43
由 cnkilior
flygun2005 写了:我写了一个脚本,想测试变量自己加1,然后再打印结果,却发现变量加1后,没有赋值回原变量,大家可以试试:
代码: 全选
#!/bin/bash
num=1
num= expr $num "+" 1
echo "this is ${num} "
num= expr $num "+" 1
echo "aftert is ${num} "
执行结果是
2
this is 1
2
aftert is 1
那么明顯空格。。。
你用debug模式運行這個腳本吧。
代码: 全选
[code]
#!/bin/bash -x
num=1
num= expr $num "+" 1
echo "this is ${num} "
num= expr $num "+" 1
echo "aftert is ${num} "
[/code]
Re: 测试变量自己加1后打印结果,发现变量加1后,没有成功赋值回原变量
发表于 : 2009-01-15 6:11
由 aerofox
代码: 全选
num= expr $num "+" 1
这句的意思是,执行 expr $num "+" 1,子进程中环境变量 n 的值为空串
Re: 测试变量自己加1后打印结果,发现变量加1后,没有成功赋值回原变量
发表于 : 2009-04-08 14:44
由 ethan2514
写个例子你看:
SUM=`[/color]expr $SUM + 1`
第一、`这个符号是~下面的那个符号,别用成了“下面的那个符号
第二、=号后面,也就是`符号前无空格!
完毕!