Linux中Shell循环结构for用法笔记

640?wx_fmt=png

Shell中可以使用for做固定次数循环的处理。常见的for循环用法主要有以下几种:

1、带列表的for循环

语法结构:

for item in (list)

do

command

done

示例:

cat demo1.sh 

内容如下:

#!/bin/bash

names="小明 小王 小张"

for item in names

do

echo "${item}"

done

执行命令:bash demo1.sh

输出结果:

小明

小王

小张

示例2 计算1到100的和

脚本1:

#!/bin/bash

sum=0

for item in {1..100}

do

let "sum+=item"

done

echo "总数为:${sum}"

脚本2:

#!/bin/bash

sum=0

for item in 'seq 1 100'

#for item in $(seq 1 100)

do

let "sum+=item"

done

echo "总数为:${sum}"

输出结果:5050

示例3循环打印当前目录的文件信息

#!/bin/bash

for item in $(ls)

do

ls -l $item

done

2、不带列表的for循环

for list

do

command

done

示例:

cat demo3.sh

#!/bin/bash

for item in $list

do

echo -n $item

done

执行:bash demo3.sh 10 20 30 40

输出结果:

10

20

30

40

3、类C语言的for循环

语法结构:

for ((exp1;exp2;exp3;))

do

command

done

用法示例:

#!/bin/bash

for ((num=1;num<=10;num++))

do

echo -n "$num "

done

计算1到100的和以及1到100的奇数和

脚本内容:

cat demo4.sh

#!/bin/bash

sum1=0

sum2=0

for((i=1,j=1;i<=100;i++,j+=2))

do

let "sum1+=i"

if [ $j -lt 100 ];then

let "sum2+=j" 

fi

done

echo "sum1=$sum1"

echo "sum2=$sum2"

执行:bash demo4.sh

输出:

sum1=5050

sum2=2500

注意:有时候使用for循环脚本不注意很有可能出现死循环,它会无限执行下去,会消耗大量的系统资源,所以

关于循环的脚本要多加测试,避免出现死循环的情况,如果执行的时候出现死循环可以用ctrl+c停止脚本运行。


posted @   天使不哭  阅读(277)  评论(0编辑  收藏  举报
编辑推荐:
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)
历史上的今天:
2018-05-20 SQL Server 数据库定时自动备份
2018-05-20 SQL Server 数据库定时自动备份
2018-05-20 SQL Server 数据库定时自动备份
2017-05-20 社交中的黄金法则,你要细细体会品味
2017-05-20 社交中的黄金法则,你要细细体会品味
2017-05-20 社交中的黄金法则,你要细细体会品味
2017-05-20 交际中你所不知道的说话的12个技巧!
点击右上角即可分享
微信分享提示