shell循环不执行(shell循环控制菜鸟教程)

头条:烟波浩渺
在前一个shell操作符之后,继续,shell循环:
shell循环有三种,一种是for循环,一种是while循环,一种是until循环。循环体类似于java,所以可以使用break调用当前循环并继续下一个循环。
for循环for循环以for开头,循环体在do和done之间。for循环有两种,一种是带in的,一种是类似java的for循环:比如输出一个0到10之间的整数,从带{}: #的范围内给一个!/bin/bashforxin {1.10} doecho’ x=$ x’ done也可以使用seq命令生成整数。seq是shell中生成整数的命令。例如,seq 1 5表示从1到5生成整数,seq 1 2 5表示从1到5生成步长为2的整数,即从1 3 5生成三个整数。例如:
对于尹$(125)do echo ‘ y=$ y ‘所做的结果是:
Y=1y=3y=5类似于java。求1到10的和:学过java或者C的都应该知道是什么意思。
SUM=0 for((I=1;i=10I))do sum=$[$ sum $ I]done echo ‘ 1-10 sum=$ sum ‘简单的算术运算应该用$(())或者$ [],前面提到过。
在中使用时,它还可以后跟特定的命令执行结果,例如打印出某个目录中的所有文件:
Forxin$(ls/home)doecho$xdone当然也可以后跟一个列表,比如:
对于Xin 1234 doecho’ x=$ x’ done while循环,循环的基本类型如下:while条件do循环体done条件满足执行,否则退出。
例如,求1到10的和:
sum=0i=1 while((I=10))do sum=$[$ sum $ I]let done echo ‘ 1-10 sum=$ sum ‘上使用了let关键字,它与echo关键字一样,是shell的一个命令。Let是shell的一个计算工具,用来执行一个或多个表达式。变量计算过程中不需要添加$的。注意while后面的条件语句可以是while((i=10)),当然也可以用while [$j -le $i]打印9×9乘法表。
I=1j=1 while((I=9))do while[$ j-le $ I]dolet sum=’ I * j ‘ echo-n ‘ $ j * $ I=$ sum ‘ letj done leti letj=1 echo ‘ ‘ done其中echo -n plus-n表示它在同一个
1 * 1=11 * 2=22 * 2=41 * 3=32 * 3=63 * 3=91 * 4=42 * 4=83 * 4=124 * 4=161 * 5=52 * 5=103 * 5=154 * 5=205 * 5=251 * 6=62 * 6=123 * 6=184 * 6=245 * 6=306 * 6=361 * 7=72 * 7=172仔细品味,直到有事发生,满足条件就退出,而满足条件就循环。例如,求1到10的和:
sum=0i=1 until((i10))dolet sum=ile ti done echo ‘ 1-10 sum=$ sum ‘未完待续!
参考文章https://blog.csdn.net/taiyang1987912/article/details/38929069

其他教程

中国社会科学院日本研究所课题组:大变革下日本对国际秩序变化的应对

2022-9-4 2:50:48

其他教程

“虎年新春”春节公关模板,收藏一下。

2022-9-4 2:53:01

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索