• shell脚本判断语句和循环语句


    使用请参考:shell脚本 if的使用和判断条件

                 

    if判断语句

    exit跳出判读语句

    不加exit的结果

    read

    -n(不换行)

    判断是否输入的是数字

    read age
    [[ $age =~ ^[0-9]+$ ]]
    if [ $? -ne 0 ]; then
    echo "你输入的不是一个数字"
    exit 1
    fi

    case判断语句

    #!/bin/bash
    cat <<EOF
    ###########################################

    欢迎学习shell编程

    ###########################################
    EOF
    echo
    read -p "你是否同意继续学习(y/n):" ans
    case $ans in
    (y|Y)
    echo "非常好,进行下一步操作!"
    ;;
    (n|N)
    echo "你不同意,退出!"
    exit 1
    ;;
    (*)
    echo "只能输入y/n,不能输入其他的"
    exit 1;;
    esac
    echo ----------------------------------------
    echo
    echo '这个是脚本的正文'

     

     

     seq 用于生成从一个数到另一个数之间的所有整数。 

    -w 指定输出数字同宽 

     

    `seq 1 10`----------------------为反引号

    循环的控制语句

    break:

    如果遇到了break,break的语句不再执行了,而且要停止循环

     输出6,先打印在跳出

     break跳出用法

    跳出一层循环,break后面默认为1

    跳出两层循环

    停止第三层循环

    continue:

    如果遇到了continue的话,continue后面的语句不再执行了

    直接进入下一次循环

    for循环实现简单的用于查看局域网中那个IP使用,那个IP未使用

    脚本内容如下:

    #!/bin/bash
    for i in $(seq 253)
    do
    if ping 192.168.0.$i -c 2;
    then
    echo "192.186.0.$i is use" >> /mnt/up.txt
    else
    echo "192.168.0.$i id not use" >> /mnt/down.txt
    fi
    done

    while循环,条件成立,则执行do和done之间的命令

     declare变量声明

    -i:将变量声明为整型

    写一个脚本统计文件行数

     head用来显示档案的开头至标准输出当中,默认head命令打印其相应文件的开头10行。

    Linux输出重定向>和>>的区别是什么?简单说>是覆盖,>>是追加

    # head /etc/passwd > passwd

    命令查看文件行数

    # wc -l /etc/passwd

     

     统计行数脚本如下:

     

    使用

    while死循环

    不停的开启vsftpd这个服务

    until循环,条件不成立,则执行do和done之间的语句。

    until和while相反。

    until 循环执行一系列命令直至条件为 true 时停止。

  • 相关阅读:
    PowerDNS简单教程(4):优化篇
    PowerDNS简单教程(3):管理篇
    PowerDNS简单教程(2):功能篇
    PowerDNS简单教程(1):安装篇
    【转】Linux vmstat命令实战详解
    折腾apt源的时候发生的错误
    Ubuntu14.04安装PowerDNS踩坑实录
    Ubuntu14.04.3,apt-get出现dpkg: error processing package xxx (--configure)和cups-daemon错误的解决方案
    Python解析配置文件模块:ConfigPhaser
    SSH异常处理(一)
  • 原文地址:https://www.cnblogs.com/djlsunshine/p/9697312.html
Copyright © 2020-2023  润新知