请教一下 为什么报这个错误啊?怎么解决 啊?

sh/bash/dash/ksh/zsh等Shell脚本
回复
deargodlove
帖子: 12
注册时间: 2009-03-17 16:02
送出感谢: 0
接收感谢: 0

请教一下 为什么报这个错误啊?怎么解决 啊?

#1

帖子 deargodlove » 2009-03-18 14:52

#!/bin/bash
declare coun = 0
while [ "$coun" -lt 10 ]
do
let $coun = "$coun + 1"
done
[root@localhost fugd]# ./j.sh
./j.sh: line 2: declare: `=': not a valid identifier
./j.sh: line 2: declare: `0': not a valid identifier
./j.sh: line 3: [: : integer expression expected
请高手帮看一下 这个错误是怎么回事???
头像
city0011
帖子: 91
注册时间: 2009-03-10 22:17
送出感谢: 0
接收感谢: 0
联系:

Re: 请教一下 为什么报这个错误啊?怎么解决 啊?

#2

帖子 city0011 » 2009-03-18 15:32

代码: 全选

#!/bin/sh
coun=0
while [ "$coun" -lt 10 ]
do
        let "coun = $coun + 1"
done
exit 0
~     
:em11
if u like
just do it
deargodlove
帖子: 12
注册时间: 2009-03-17 16:02
送出感谢: 0
接收感谢: 0

Re: 请教一下 为什么报这个错误啊?怎么解决 啊?

#3

帖子 deargodlove » 2009-03-18 15:35

city0011 写了:

代码: 全选

#!/bin/sh
coun=0
while [ "$coun" -lt 10 ]
do
        let "coun = $coun + 1"
done
exit 0
~     
:em11
#!/bin/bash
declare coun
coun = "0"
while [ "$coun" -lt 10 ]
do
let $coun = "$coun + 1"
done
exit 0
[root@localhost fugd]# ./j.sh
./j.sh: line 3: coun: command not found
./j.sh: line 4: [: : integer expression expected
我改了 按照楼上的 但还是不对啊~~~~~~~~
头像
xiooli
帖子: 6956
注册时间: 2007-11-19 21:51
来自: 成都
送出感谢: 0
接收感谢: 3 次
联系:

Re: 请教一下 为什么报这个错误啊?怎么解决 啊?

#4

帖子 xiooli » 2009-03-18 15:38

空格问题,=两边有空格是判断,无空格是赋值。
头像
city0011
帖子: 91
注册时间: 2009-03-10 22:17
送出感谢: 0
接收感谢: 0
联系:

Re: 请教一下 为什么报这个错误啊?怎么解决 啊?

#5

帖子 city0011 » 2009-03-18 15:40

xiooli 写了:空格问题,=两边有空格是判断,无空格是赋值。
:em11 :em11 :em11 :em11 :em06 :em06 :em06 :em06
if u like
just do it
deargodlove
帖子: 12
注册时间: 2009-03-17 16:02
送出感谢: 0
接收感谢: 0

Re: 请教一下 为什么报这个错误啊?怎么解决 啊?

#6

帖子 deargodlove » 2009-03-18 15:46

#!/bin/bash
declare coun = 1
while [ " $coun " -lt 10 ]
do
let $coun = " $coun + 1 "
done
exit 0


哪个位置缺少空格??

是说 declare coun = 1 么 ,两边都有空格
[ " $coun " -lt 10 ]两边也都有空格

怎么回事?
能具体说下是哪个地方么?
头像
xiooli
帖子: 6956
注册时间: 2007-11-19 21:51
来自: 成都
送出感谢: 0
接收感谢: 3 次
联系:

Re: 请教一下 为什么报这个错误啊?怎么解决 啊?

#7

帖子 xiooli » 2009-03-18 16:06

代码: 全选

#!/bin/bash
declare coun
coun=0
while [ "$coun" -lt 10 ]
do
let coun="$coun + 1"
done
exit 0
头像
city0011
帖子: 91
注册时间: 2009-03-10 22:17
送出感谢: 0
接收感谢: 0
联系:

Re: 请教一下 为什么报这个错误啊?怎么解决 啊?

#8

帖子 city0011 » 2009-03-18 17:51

deargodlove 写了:#!/bin/bash
declare coun = 1
while [ " $coun " -lt 10 ]
do
let $coun = " $coun + 1 "
done
exit 0


哪个位置缺少空格??

是说 declare coun = 1 么 ,两边都有空格
[ " $coun " -lt 10 ]两边也都有空格

怎么回事?
能具体说下是哪个地方么?
:em29 :em29 :em26 :em26
:em29 :em29 :em26
if u like
just do it
cqhcp
帖子: 8
注册时间: 2009-03-05 11:05
送出感谢: 0
接收感谢: 0

Re: 请教一下 为什么报这个错误啊?怎么解决 啊?

#9

帖子 cqhcp » 2009-03-20 11:02

赋值的时候,等号两边不能有空格,应该是coun=1, 而不是coun = 1
deargodlove
帖子: 12
注册时间: 2009-03-17 16:02
送出感谢: 0
接收感谢: 0

Re: 请教一下 为什么报这个错误啊?怎么解决 啊?

#10

帖子 deargodlove » 2009-03-31 16:41

感谢楼上的各位
回复

回到 “Shell脚本”