当前位置:首页 > 开发 > 系统架构 > shell > 正文

Shell学习笔记---数字递增总结

发表于: 2011-02-20   作者:czmmiao   来源:转载   浏览次数:
摘要: 在shell用for循环做数字递增的时候发现问题,特列出shell下for循环的几种方法: * 1.for i in `seq 1 1000000`;do echo $i done 用seq 1 10000000做递增,之前用这种方法的时候没遇到问题,因为之前的i根本就没用到百万(1000000),因为项目需要我这个数字远大于百万,发现用 seq 数值到 1000000时转换为1e+06,根本无

在shell用for循环做数字递增的时候发现问题,特列出shell下for循环的几种方法:

* 1.
for i in `seq 1 1000000`;do
echo $i
done


用seq 1 10000000做递增,之前用这种方法的时候没遇到问题,因为之前的i根本就没用到百万(1000000),因为项目需要我这个数字远大于百万,发现用 seq 数值到 1000000时转换为1e+06,根本无法作为数字进行其他运算,或者将$i有效、正确的取用,遂求其他方法解决,如下

* 2.
for((i=1;i<10000000;i++));do
echo $i
done

 

* 3.
i=1
while(($i<10000000));do
echo $i
i=`expr $i + 1`
done


因为本方法调用expr故运行速度会比第1,第2种慢不少不过可稍作改进,将i=`expr $i + 1`改为i=$(($i+1))即可稍作速度的提升,不过具体得看相应shell环境是否支持

* 4.
for i in {1..10000000;do
echo $i
done


其实选用哪种方法具体还是得由相应的shell环境的支持,达到预期的效果,再考虑速度方面的问题。

 

参考至:http://www.shocr.com/linux-shells-for-loop/

如有错误,欢迎指正

邮箱:czmcj@163.com

Shell学习笔记---数字递增总结

  • 0

    开心

    开心

  • 0

    板砖

    板砖

  • 0

    感动

    感动

  • 0

    有用

    有用

  • 0

    疑问

    疑问

  • 0

    难过

    难过

  • 0

    无聊

    无聊

  • 0

    震惊

    震惊

编辑推荐
很早就想根据自己的学习规律和遗忘规律,自己总结一下Linux/Unix系统的Shell命令,一来便于自己时常
很早就想根据自己的学习规律和遗忘规律,自己总结一下Linux/Unix系统的Shell命令,一来便于自己时常
很早就想根据自己的学习规律和遗忘规律,自己总结一下Linux/Unix系统的Shell命令,一来便于自己时常
  前言   这篇文章是本人玩kinect时做的一个小实验,即不采用机器学习等类似AI的方法来做简单的
很早就想根据自己的学习规律和遗忘规律,自己总结一下Linux/Unix系统的Shell命令,一来便于自己时常
很早就想根据自己的学习规律和遗忘规律,自己总结一下Linux/Unix系统的Shell命令,一来便于自己时常
《Unix Shell 实例精解》学习笔记 Shell是一种特殊的程序,被用作用户与内核的Unix操作系统核心通讯
今天网上发现了一段代码,只有界面,很不错,学习了并完成了逻辑。 效果图: 点击这里试玩 http://ww
在 Android系统中,所有安装到系统的应用程序都必有一个数字证书,此数字证书用于标识应用程序的作
在 Android系统中,所有安装到系统的应用程序都必有一个数字证书,此数字证书用于标识应用程序的作
版权所有 IT知识库 CopyRight © 2009-2015 IT知识库 IT610.com , All Rights Reserved. 京ICP备09083238号