前言:在写Shell脚本时,对于循环的几种写法,我想大家并不陌生。但若不是经常写,也会遗忘一些循环语法,或者只能够想起某一两种语法编写脚本。本文就来总结一下Shell中经常使用的循环操作,以及各种操作之间的区别和不同作用。
测试代码
在编写Shell的几种循环语句之前,先写个main测试函数来验证这几种循环操作,代码如下:
复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30#!/bin/bash # Create 2021-5-29 17:08 # Author Caso_卡索 main() { echo "input loop kind 1~5" read kinds case $kinds in 1) one_loop ;; 2) two_loop ;; 3) three_loop ;; 4) four_loop ;; 5) five_loop ;; *) echo "Please input 1-6" esac }
第一种循环写法
复制代码
1
2
3
4
5
6
7one_loop() { for((i=0; i<5; i++)) { echo $i } }
第二种循环写法
复制代码
1
2
3
4
5
6
7
8
9
10two_loop() { local i=0 while((i<5)) do let i++ echo $i done }
第三种循环写法
这类用法是将文件 data.log 通过 read 命令按行读取,每次打印当前所读取的一行内容
复制代码
1
2
3
4
5
6
7
8three_loop() { while read line do echo $line done < data.log }
第四种循环写法
这种是先将 data.log 文件中的内容通过子shell存储到临时缓存,在由 for in 语句循环使用
复制代码
1
2
3
4
5
6
7
8four_loop() { for i in $(cat data.log) do echo $i done }
第五种循环写法
复制代码
1
2
3
4
5
6
7
8
9
10five_loop() { while true do echo "Hello Shell Loop" done } # 在最后调用main函数 main
执行效果如下图示:
以上是本人总结的几种Shell的循环写法,有其他方式的写法欢迎下方评论 ~
最后
以上就是爱撒娇朋友最近收集整理的关于Shell—几种循环操作的全部内容,更多相关Shell—几种循环操作内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复