当前时区为 UTC + 8 小时



发表新帖 回复这个主题  [ 9 篇帖子 ] 
作者 内容
1 楼 
 文章标题 : bash实现循环操作的问题,求指点
帖子发表于 : 2010-09-07 20:46 

注册: 2008-12-16 16:33
帖子: 9
送出感谢: 0 次
接收感谢: 0 次
写了一个循环执行100次的脚本,参考了多篇Google出来的问题,折腾了很久但是就是搞不定。故来此求教

代码:
#!/bin/bash
VAR=0
while [ "$VAR" -le 100 ];do
echo "$VAR"
$VAR=$(($VAR + 1));
done


错误提示:

./whiletest.sh: line 5: 0=1:找不到命令
0
./whiletest.sh: line 5: 0=1:找不到命令


最后由 hfutliuwei 编辑于 2010-09-07 21:29,总共编辑了 2 次

页首
 用户资料  
 
2 楼 
 文章标题 : Re: bash实现循环操作的问题,求指点
帖子发表于 : 2010-09-07 20:56 
头像

注册: 2008-04-07 17:36
帖子: 4010
地址: 泰安人在阜新
送出感谢: 0 次
接收感谢: 0 次
你是想。。。

VAR=$(($VAR + 1));

这样吧? :em04


_________________
宇宙数学物理 sssssssss Ubuntu 桌面培训 sssssssss 问打包的问题之前先看
和我一样的新手请看,我看过了,腰不酸了,腿不疼了,上楼也有劲了
想去IRC的点这里——一个比QQ群好N多的东西


页首
 用户资料  
 
3 楼 
 文章标题 : Re: bash实现循环操作的问题,求指点
帖子发表于 : 2010-09-07 21:10 

注册: 2008-12-16 16:33
帖子: 9
送出感谢: 0 次
接收感谢: 0 次
wzssyqa 写道:
你是想。。。

VAR=$(($VAR + 1));

这样吧? :em04



写错了~改过来了,还是不行


页首
 用户资料  
 
4 楼 
 文章标题 : Re: bash实现循环操作的问题,求指点
帖子发表于 : 2010-09-07 21:27 
头像

注册: 2008-04-07 17:36
帖子: 4010
地址: 泰安人在阜新
送出感谢: 0 次
接收感谢: 0 次
100 后边要有个空格的。。。


_________________
宇宙数学物理 sssssssss Ubuntu 桌面培训 sssssssss 问打包的问题之前先看
和我一样的新手请看,我看过了,腰不酸了,腿不疼了,上楼也有劲了
想去IRC的点这里——一个比QQ群好N多的东西


页首
 用户资料  
 
5 楼 
 文章标题 : Re: bash实现循环操作的问题,求指点
帖子发表于 : 2010-09-07 21:28 

注册: 2008-12-16 16:33
帖子: 9
送出感谢: 0 次
接收感谢: 0 次
wzssyqa 写道:
你是想。。。

VAR=$(($VAR + 1));

这样吧? :em04



确实,但是现在的问题是shell把变量值当命令了


./whiletest.sh: line 5: 0=1:找不到命令
0
./whiletest.sh: line 5: 0=1:找不到命令


页首
 用户资料  
 
6 楼 
 文章标题 : Re: bash实现循环操作的问题,求指点
帖子发表于 : 2010-09-07 22:10 

注册: 2008-05-24 8:30
帖子: 1453
送出感谢: 2
接收感谢: 30
hfutliuwei 写道:
wzssyqa 写道:
你是想。。。

VAR=$(($VAR + 1));

这样吧? :em04



确实,但是现在的问题是shell把变量值当命令了


./whiletest.sh: line 5: 0=1:找不到命令
0
./whiletest.sh: line 5: 0=1:找不到命令

出现这个错误说明你还没有去掉 “$VAR=” 中的 “$”,如果去掉了,肯定是没问题的。另一个实现同样功能的循环是:
代码:
#!/bin/bash
for ((VAR=0; VAR<=100; VAR++)); do
    echo $VAR
done

此外,实现“VAR=$(($VAR+1))”这一功能的语句还有:
代码:
VAR=$((VAR+1))
((VAR=$VAR+1))
((VAR=VAR+1))
((VAR++))


页首
 用户资料  
 
7 楼 
 文章标题 : Re: bash实现循环操作的问题,求指点
帖子发表于 : 2010-09-07 22:31 
头像

注册: 2008-04-07 17:36
帖子: 4010
地址: 泰安人在阜新
送出感谢: 0 次
接收感谢: 0 次
学习下ls的茴香豆的四种写法。。。


_________________
宇宙数学物理 sssssssss Ubuntu 桌面培训 sssssssss 问打包的问题之前先看
和我一样的新手请看,我看过了,腰不酸了,腿不疼了,上楼也有劲了
想去IRC的点这里——一个比QQ群好N多的东西


页首
 用户资料  
 
8 楼 
 文章标题 : Re: bash实现循环操作的问题,求指点
帖子发表于 : 2010-09-08 8:54 
头像

注册: 2006-10-25 18:08
帖子: 1582
送出感谢: 0 次
接收感谢: 0 次
for i in {0..100}
do
echo $i
done
这样比较简单


_________________
楼主真是一派胡言,真可谓:“两个黄鹂鸣翠柳,不知所云;一行白鹭上青天,不知所止“。本来不想和你辩论,今天气愤不过,和你理论一番。我国宪法写得清清楚楚:“一夜夫妻百日恩,七楼以上才有电梯”。这个想必你知道,既然知道,你就不能断章取义,就算是天气预报,它还有不准的时候呢!!!再者说了,那中国银行也不是你一家开的。人家马拉多纳都结婚了,你还拿着粮票顶什么用呢。真是滑天下之大稽。前些日子,全国人大刚刚开过会,郑重声明:“中国不搞多party制,存栏母猪给补贴”。多好的事呢,楞让你这号人给搅混了。


页首
 用户资料  
 
9 楼 
 文章标题 : Re: bash实现循环操作的问题,求指点
帖子发表于 : 2010-09-08 9:39 
头像

注册: 2005-08-14 21:55
帖子: 58428
地址: 长沙
送出感谢: 4
接收感谢: 274
那还不如直接seq啊。
:em04

(( var ++ ))
的写法啊。类C的计算。


_________________
● 鸣学


页首
 用户资料  
 
显示帖子 :  排序  
发表新帖 回复这个主题  [ 9 篇帖子 ] 

当前时区为 UTC + 8 小时


在线用户

正在浏览此版面的用户:没有注册用户 和 4 位游客


不能 在这个版面发表主题
不能 在这个版面回复主题
不能 在这个版面编辑帖子
不能 在这个版面删除帖子
不能 在这个版面提交附件

前往 :  
本站点为公益性站点,用于推广开源自由软件,由 DiaHosting VPSBudgetVM VPS 提供服务。
我们认为:软件应可免费取得,软件工具在各种语言环境下皆可使用,且不会有任何功能上的差异;
人们应有定制和修改软件的自由,且方式不受限制,只要他们自认为合适。

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
简体中文语系由 王笑宇 翻译