• for循环语句及批量创建用户!


    1、for 语句结构
    for 变量名 in 取值列表
    do
    命令序列
    done

    ==================================================================

    随机数

    [root@ns2 ~]# vim random.sh

    #!/bin/bash
    
    for ((i=1;i<=99;i++))               //循环99次
    do
    expr $RANDOM                        //随机取数
    sleep 2                             //两秒输出一次
    done

    [root@ns2 ~]# bash random.sh
    18393
    32509
    9614
    4809

    ====================================================================

    石头剪刀布游戏

    [root@ns2 ~]# vim youxi.sh

    #!/bin/bash
    
    echo "这是一个石头剪刀布的游戏"
    echo "游戏规则石头(0)剪刀(1)布(2)"
    
    pc=$(expr $RANDOM % 3)
    for ((;i=1;))
    do
       read -p "请输入你的选择石头(0)剪刀(1)布(2):" set
       if [ $set -eq 0 ] && [ $pc -eq 1 ]
        then
            echo "你赢了"
       elif [ $set -eq 1 ] && [ $pc -eq 2 ]
        then
           echo "你赢了"
       elif [ $set -eq 2 ] && [ $pc -eq 0 ]
       then
           echo "你赢了"
      elif [ $set -eq $pc ]
       then
          echo "平局"
      else
         echo "你输了"
    fi
    done

    [root@ns2 ~]# bash youxi.sh
    这是一个石头剪刀布的游戏
    游戏规则石头(0)剪刀(1)布(2)
    请输入你的选择石头(0)剪刀(1)布(2):1
    你输了
    请输入你的选择石头(0)剪刀(1)布(2):2

    你赢了

    ===================================================================

    创建多个用户并修改密码

    [root@ns2 ~]# vim user.txt                                   //创建一个用户文件夹

    zhangsan
    lisi
    wangwu
    maliu
    sunqi

    [root@ns2 ~]# vim useradd.sh                          //创建一个用户脚本

    #!/bin/bash
    
    for i in $(cat /root/user.txt)                        //循环user.txt文件夹中的用户
    do
    useradd $i                                            //循环添加user.txt中的用户
    echo "12345" | passwd --stdin $i                      //为每个用户修改密码
    done

    [root@ns2 ~]# bash useradd.sh
    更改用户 zhangsan 的密码 。
    passwd:所有的身份验证令牌已经成功更新。
    更改用户 lisi 的密码 。
    passwd:所有的身份验证令牌已经成功更新。
    更改用户 wangwu 的密码 。
    passwd:所有的身份验证令牌已经成功更新。
    更改用户 maliu 的密码 。
    passwd:所有的身份验证令牌已经成功更新。
    更改用户 sunqi 的密码 。
    passwd:所有的身份验证令牌已经成功更新。

    ===================================================================

    九九乘法表
    [root@localhost ~]# vim for.sh

    #!/bin/bash
    
    for ((i=1;i<=9;i++))
         do
           for ((j=1;j<=9;j++))
         do
           #[ $i -gt $j ] && echo -n "*"
           echo -n "${j}x${i}=$(($i*$j))  "
            if [ $i -eq $j ]
           then
               echo -e "
    "
    break
    fi
    done
    done

    [root@localhost ~]# bash for.sh
    1x1=1

    1x2=2 2x2=4

    1x3=3 2x3=6 3x3=9

    1x4=4 2x4=8 3x4=12 4x4=16

    1x5=5 2x5=10 3x5=15 4x5=20 5x5=25

    1x6=6 2x6=12 3x6=18 4x6=24 5x6=30 6x6=36

    1x7=7 2x7=14 3x7=21 4x7=28 5x7=35 6x7=42 7x7=49

    1x8=8 2x8=16 3x8=24 4x8=32 5x8=40 6x8=48 7x8=56 8x8=64

    1x9=9 2x9=18 3x9=27 4x9=36 5x9=45 6x9=54 7x9=63 8x9=72 9x9=81

    =========================================================================== 

  • 相关阅读:
    用于Transformer的6种注意力的数学原理和代码实现
    假设检验中的第一类错误和第二类错误
    2022 年 4 月 10篇 ML 研究论文推荐
    高斯朴素贝叶斯分类的原理解释和手写代码实现
    SQL 必知必会 50 题(1 5)
    那些年,我们一起做过的 Java 课后练习题(71 75)
    【UWP】实现一个波浪进度条
    springboot源码(八)
    springboot源码(五)
    springboot源码(一)
  • 原文地址:https://www.cnblogs.com/CMX_Shmily/p/11447219.html
Copyright © 2020-2023  润新知