Shell中的for循环总结电脑资料.pdfVIP

  • 2
  • 0
  • 约2.98千字
  • 约 15页
  • 2020-08-23 发布于天津
  • 举报
Shell 中的 for 循环总结电脑资料 这篇文章主要介绍了 Shell 中的 for 循环 , 本文讲解了 shell 中 for 循环用法、shell 下 for 循环的几种方法等内容 , 需要的朋友可以 参考下 关于 shell 中的 for 循环用法很多,一直想总结一下,今天网上 看到上一篇关于 for 循环用法的总结, 感觉很全面, 所以就转过来研 究研究,嘿嘿 ... 代码如下 : for((i=1;i=10;i++));do echo $(expr $i \* 4);done 在 shell 中常用的是 for i in $(seq 10) 代码如下 : for i in `ls` for i in ${arr[@]} for i in $* ; do for File in /proc/sys//ipv4/confaept_redirects :‘ for File in /proc/sys//ipv4/conf/*/aept_redirects; do echo $File done echo 直接指定循环内容 for i in f1 f2 f3 ;do echo $i done echo echo C 语法 for 循环 : for (( i=0; i echo $i done shell 语法好麻烦的,一个循环都弄了一会 ,找了几个不同的方 法来实现输出 1-100 间可以被 3 整除的数 1. 用(()) 代码如下 : #!/bin/bash clear for((i=1;i100;i++)) for do if((i%3==0)) then echo $i continue fi done 2. 使用 `seq 100` 代码如下 : #!/bin/bash clear for i in `seq 100` do if((i%3==0)) then echo $i continue fi done 3. 使用 while 代码如下 : #!/bin/bash clear i=1 while(($i100)) do if(($i%3==0)) then echo $i fi i=$(($i+1)) done 在 shell 用 for 循环做数字递增的时候发现问题,特列出 shell 下 for 循环的几种方法 : 1. 代码如下 : for i in `seq 1 1000000`;do echo $i done 用 seq 1 做递增,之前用这种方法的时候没遇到问题, 因为之前的 i 根本就没用到百万 (1000000), 因为项目需要我这个数 字远大于百万,发现用 seq 数值到 1000000 时转换为 1e+06,根本无 法作为数字进行其他运算 , 或者将 $i 有效、正确的取用,遂求其他方 法解决,如下 2. 代码如下 : for((i=1;i++));do echo $i done 3. i=1 while(($);do echo $i i=`expr $i + 1` done 因为本方法调用 expr 故运行速度会比第 1,第 2 种慢不少不过可 稍作改进,将 i=`expr $i + 1` 改为 i=$(($i+1)) 即可稍作速度的提 升 , 不过具体得看相应 shell 环境是否支持

文档评论(0)

1亿VIP精品文档

相关文档