Blog.038 Shell 编程 循环语句与函数

时间:2021-07-12
本文章向大家介绍Blog.038 Shell 编程 循环语句与函数,主要包括Blog.038 Shell 编程 循环语句与函数使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

本章目录

1. 循环语句
  1.1 for 循环语句
  1.2 while 循环语句
  1.3 until 循环语句
2. Shell 函数
  2.1 应用示例
  2.2 函数的作用范围
  2.3 函数的参数
  2.4 递归函数
3. Shell 数组
  3.1 数组定义方法
  3.2 操作示例
4. Shell 脚本正确性测试

1. 循环语句

    在不少实际问题中有许多具有规律性的重复操作,因此在程序中就需要重复执行某些语句。
    循环结构是在一定条件下反复执行某段程序的流程结构,被反复执行的程序被称为循环体。

    循环语句是由循环体及循环的终止条件两部分组成的。


  1.1 for 循环语句

  • 读取不同的变量值,用来逐个执行同一组命令。
  • 结构

    例:

  • 批量添加用户;
  • 用户名存在user.txt中,每行一个;
  • 初始密码均设为123456;
  • 验证脚本。


  1.2 while 循环语句

  • 重复测试某个条件,只要条件成立则反复执行。
  • 结构:

    例:

  • 批量添加用户;
  • 用户名称以 stu 开头,按数字顺序进行编号;
  • 一个添加 5 个账户,即 stu1、stu2、…stu5;
  • 初始密码均设为 123456。


  1.3 until 循环语句

  • 重复测试某个条件,只要条件不成立则反复执行。
  • 格式:

    例:

  • 计算 1~50 的和值;
  • 通过循环累加的方式计算 1~50 的和值。


2. Shell 函数

  • 将命令序列按格式写在一起。
  • 可方便重复使用命令序列;
  • Shell函数定义:

    【 function 】 函数名(){
    命令序列
    【return x】
    }

  • 调用函数的方法:

    函数名 【函数1】【函数2】


  2.1 应用示例

    例:

  • 两个数字求和;
  • 通过sum() {}定义函数;
  • 使用read命令交互输入两个数并求和。


  2.2 函数的作用范围

  • 函数在 Shell 脚本中仅在当前Shell环境中有效;
  • Shell 脚本中变量默认全局有效;
  • 将变量限定在函数内部使用 local 命令。


  2.3 函数的参数

  • 参数的用法:

    函数名称 参数1 参数2 参数3 …

  • 参数的表示方法:

    $1 $2 … ${10} ${11}


  2.4 递归函数

  • 调用自己本身的函数。

    例:

  • 递归遍历记录;
  • 通过定义递归函数 list_files 来实现。


3. Shell 数组

  • 数组包括的数据类型:

    数值类型;
    字符类型;
    使用 " " 或 ' ' 定义。


  3.1 数组定义方法

  • ①:

    数组名=(vlaue0 vlaue1 vlaue2 …)

  • ②:

    数组名=([0]=vlaue [1]=vlaue [2]=vlaue …)

  • ③:

    列表名=“value0 value1 value2 …”
    数组名=($列表名)

  • ④:

    数组名[0]=“value”
    数组名[1]=“value”
    数组名[2]=“value”
    …


  3.2 操作示例

    例:

  • 获取数组长度

  • 读取某下标赋值

  • 数组遍历

  • 数组切片

  • 数组替换

  • 数组删除


4. Shell 脚本正确性测试

  • -n:不会执行该脚本,仅查询本语法是否有问题,如果没有语法问题就不显示任何内容,如果有问题会提示报错。
  • -v:在执行脚本时,先将脚本的内容输出到屏幕上然后执行脚本,如果有错误,也会给出错误提示。
  • -x:将执行的脚本内容输出到屏幕上,这个是对调试很有用的参数。

-

原文地址:https://www.cnblogs.com/cityfell/p/14991004.html