- 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 环境是否支持
您可能关注的文档
最近下载
- 新教科版五年级下册科学第四单元课件.pptx VIP
- 钢吊车梁SG520-1标准图集.pdf VIP
- 人教版2026-2027学年八年级下册地理教学工作计划(及进度表).docx
- ParrotParrot无人机ANAFI UKR用户手册.pdf
- (2026春新版本)粤教版科学三年级下册教学计划.pdf VIP
- 超星尔雅学习通中国现代文学名著选讲网课章节测试答案.docx VIP
- 新教科版五年级下册科学第三单元《环境与我们》全单元课件.pptx VIP
- 2026年高中历史教师资格证考试《近代史》真题.docx VIP
- 泌尿系结石课件.pptx VIP
- 2024年湖北荆州中考语文试题及答案.pdf VIP
原创力文档

文档评论(0)