zoukankan      html  css  js  c++  java
  • for语句

    for语句循环
      列表的生成方式:
      1、直接给出字符串列表
      2、整数列表
        a{start...end}
        b seq 命令引用$(seq[start [step]] end)
      3、返回列表的命令
        $(COMMAND)
      4、glob机制
        示例:同上脚本功能
      5、变量引用
        $@ $* 将参数做为for循环列表  for语句的应用场景:

        有一个功能,这个功能需要循环执行,只是执行对象不同;【对象必须是同类数据】
      for语句格式:
        a=['a','b','c']--在python程序中,我们很多情况下,需要调用相应的方法去生成列表
        for 变量 in 列表;do
          循环体
        done
          例题:99乘法表
        #!/bin/bash
        #
        for i in `seq 9`;do
          for j in `seq 9`;do
            [ $j -le $i ]&& echo -n "$i*$j=`echo $(($i*$j))` "

          done
          echo " "
        done

      echo :
        -e 使echo命令能识别特殊字符

      扩展:for语句的另一种写法:
      基于C语言格式的for语句写法:
        for 变量 in 列表;do
          循环体
        done
      优点:不易进入死循环

      for((初始条件;条件判断语句;值变化语句));do
          循环体
      done
      99乘法表
        for in {1..9};do
          for((j=1;j<$i;j++));do
            [$j -le $i] && echo -n -e "$i*$j=$[$i*$j] "
          done
          echo
        done

    case
    while

      #
      while语句格式
        初始值
        while 条件;do
          循环体
        done
    until

    交互输入
      read input()

      read a b c
      aa bb cc
      read命令同时可以定义多个变量值;而输入的内容默认以空格为分隔符,将值输入到对应的变量中;
      如果默认值过多,最后所有的值都会被赋予给最后一个变量;、
      如果默认值过少,多余的变量则为空;

      常用参数:
      -p
        read -p "请输入一个目录:" 变量
          相当于echo "请输入一个目录:";read 变量
      -t 定义超时时间
        read -t 5 -p "请输入一个目录:" 变量

      脚本默认值

        [ ! -n $filename ]&&filename="xxx" 判断是否存在-z没有,没有为真;-n有,有为假
        filename="xiaohua"

      ssh-keygen生成秘钥队

      练习:输入设备文件,输出这个设备文件的基本信息
        #!/bai/bash
        #
        read -5 5 -p"请输入一个设备文件名:" devname
        [ -z $devname ] && devname='fdisk -l'
        if[ -b /dev/$devname ];then
          fdisk -l /dev/$devname
          exit 0
        else
          echo "$devname 不是设备文件"
          echo "Usage:'请输入一个设备文件,如sda'"
        fi


    case语句:
       case 变量 in
       PATTEN1)
          代码块1
          ;;
       PATTEN2)
          代码块2
          ;;
        *)
          代码库
        esac

  • 相关阅读:
    MAUI预览版发布 (.NET 6 Preview2)
    ASP.NET Core 基础系列(6)(中间件)
    ASP.NET Core 基础系列(5)(appSetting)
    ASP.NET Core 基础系列(4)(Startup)
    ASP.NET Core 基础系列(3)(启动设置)
    ASP.NET Core 基础系列(2)(托管模型)
    ASP.NET Core 基础系列(1)(Main方法)
    Android开发学习之路-PopupWindow和仿QQ左滑删除
    部分病毒进程任务管理器终止不怎么办
    intellij idea 历史版本下载地址
  • 原文地址:https://www.cnblogs.com/wangzijie123456/p/11375156.html
Copyright © 2011-2022 走看看