我是靠谱客的博主 善良毛衣,最近开发中收集的这篇文章主要介绍shell脚本之for循环语法结构(实现0-100奇数的相加、判断所输入的数字为质数)----break、exit、continue循环控制语句的写法,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

1、列表循环

功能:用于将一组命令执行已知的次数

基本语法格式:
在这里插入图片描述
(1)实现1-10的倒数:

[root@server1 shells]# for i in {10..1};do echo $i;done    //注意中间用..隔开
10
9
8
7
6
5
4
3
2
1

(2)实现1-10奇数的打印

[root@server1 shells]# for i in {1..10..2};do echo $i;done    //{开始..结束..步长}
1
3
5
7
9

2、类c风格

在这里插入图片描述
(1)实现1-100奇数的和运算
第一步:要实现shell脚本的四则运算,请参谋我之前写的这篇文章
在这里插入图片描述
直接上代码吧。没啥好说的了:
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
再看看我写的吧:

#!/bin/bash
sum=0,i=1;     //定义变量
for i in $(seq 1 2 100)    // seq是个小工具,所以要用$()来执行命令行
do
         $((sum = $sum+$i)) &> /dev/null   //因为$(())四则运算方法是计算出来数值,而这个中间计算出来的过程,如果我们放在command行,相当于将一个计算结果放在命令行,那肯定要报错,所以我们将它导入/dev/null
done
echo "$sum"

要求:利用两个文件中的内容(user.txt和userpasswd.txt)创建用户。
在这里插入图片描述
代码如下:

#!/bin/bash
  2 FILE1=/mnt/user.txt
  3 FILE2=/mnt/userpasswd.txt
  4 LINE_NUM=`sed -n '$=' $FILE1`
  5 for line in `seq 1 $LINE_NUM`
  6 do
  7         USERNAME=$(sed -n ${line}p $FILE1)
  8         PASSWD=$(sed -n ${line}p $FILE2)
  9         id $USERNAME  &> /dev/null
 10         [ $? -ne 0 ] &&
 11         { useradd $USERNAME
 12          echo "$PASSWD" |passwd --stdin $USERNAME  &> /dev/null
 13         echo "$USERNAME is create" 
 14         }   || echo "$USERNAME is exit"
 15 done

2、循环控制语句

在这里插入图片描述exit : 能将执行结果退出值更改为任意值。
在这里插入图片描述
执行结果:非0表示执行错误
在这里插入图片描述
更改:
在这里插入图片描述
执行结果:
在这里插入图片描述尽管执行的命令仍然是错误的,但是执行结果退出值却更改了。

(1)判断所输入的整数是否为质数:
第一步:什么是质数?(且1不为质数也不为合数)
在这里插入图片描述
第二步:直接上代码

#!/bin/bash
read -p "a int num:" N    //通过交互输入模式输入被除数
a=$(($N-1))      //将输入的数字定义为一个变量存储
[ $N -eq 1 ] && echo "no"  && exit
for i in $(seq 2 "$a")     //定义除数,除数是除了1和它本身的且小于它本身的数字
do
 if [ $(($N%$i)) -eq 0  ]     //如果这个被除数和任意一个除数(2~N-1)的余数为0,说明就被整除了,就不是质数了,直接打印不是,退出程序
then
        echo "no"
        exit
 elif [ $(($N%i)) -ne 0  ]      //如果不为0,继续挑选下一个,直到定义的除数中,被除数余所有的除数都不为0,循环结束,打印yes
then
        continue
else
        continue
fi
done
echo "yes"

最后

以上就是善良毛衣为你收集整理的shell脚本之for循环语法结构(实现0-100奇数的相加、判断所输入的数字为质数)----break、exit、continue循环控制语句的写法的全部内容,希望文章能够帮你解决shell脚本之for循环语法结构(实现0-100奇数的相加、判断所输入的数字为质数)----break、exit、continue循环控制语句的写法所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(62)

评论列表共有 0 条评论

立即
投稿
返回
顶部