zoukankan      html  css  js  c++  java
  • read与for语句循环

    交互输入与for语句
      1.交互输入
                   read python中用input()函数,进行输入;
         read 命令同时可以定义多个变量值;而输入的内容默认以 空格符为分隔符,将值输入到对应的变量中;

        如果默认值过多,最后所有的值都会被赋予给最后一个变量;

        如果默认值过少,多余的变量则为空值;

      示例:

        read a b c

        aa bb cc   

      read如何输入:

          echo“请输入一个目录:"
              我们需要echo-n取消换行符号  

          echo°请输入一个目录:";read变量

          请输入一个目录:etc

          常用参数

              -p

              read-p“请输入一个目录:"变是  

              -t 定义超时时间    

              read -t 5 -p "请输入一个目录:"变量  

          脚本默认值

              [-n $filename] && filename="zhangjie"

                输入内容-----------------------------------------

              |                                                                |

                                   输入是否正确------------                            没有输入-----------------------

              |                                 |                              |                                       |
                                     正确                            不正确,给提示       提示必须输入                给出默认值

    2、for语句循环

      for语句的应用场景:

        有一个功能,这个功能需要循环执行,只是执行的对象不同;

      for语句格式:

        for 变量 in 列表;do

          循环体

        done  

      echo -e 

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

         : 回车不换行

         : 换行符

         :制表符tab = 4个空格

        unix2dos    -->

        dos2unix

      case语句:

        case的语法格式:

          case 变量 in

          PATTEN1)

            代码块1

              ;;     

          PATTEN2)

            代码块2

              ;;

          *)

    列表的生成方式:

       1、直接给出字符串列表

         for i in a b c d e;do 

           循环体

         done

       2、整数列表  

         a 、{start ... end}    //{1...1}是不行的 = python   range{1,100}

         b 、seq命令引用   $seq[start ... end]

           步长  python  range{1,100,2}

       3、返回列表的命令

        $(command)

        应用场景:ls /var/log

       4、glob机制------文件名通配符的机制

          $(ls /var/log)

          /var/log/*

            test命令总结:

            1、test的命令的option的-a -o 只在命令中使用;

                

        5、变量引用---传参

          $@  $*  将参数作为for循环

          $0  ----和awk的不一样

            bash中的$0   代表运行的脚本文件;

            awk中的$0    代表整行内容;   ------awk按行执行 

                需要多个词的时候用$@,需要用一个词的时候用$*

        扩展:for语句的另外一种写法:

          基于c语言的for语言写法:

            for 变量 in 列表;do

                循环体

            done  

            优点:不易进入死循环

          

          for((i=0;i<10;i++))

          for((初始条件;条件判断语句;值变化语句))  

            循环体

          done

        

        while语句的格式:

          i = 0 (因为机器识别数字是从0开始的)

          初始值

          while 条件 ;do

            循环体

            let i++

          done        

  • 相关阅读:
    终于学会用WinCVS来开源了
    从网上收集EMail(正则表达式,C#源码)
    元宝NewBar发布1.2.0测试版
    使用Gimp切图
    shell编程笔记
    poj2485
    poj 3630 字典树
    杭电oj题目和分类
    强连通分量Kosaraju算法
    随机数的产生
  • 原文地址:https://www.cnblogs.com/azuressy/p/11356885.html
Copyright © 2011-2022 走看看