函数

函数是 Shell 脚本中组织代码的基本单元。把一段常用的代码封装成函数,不仅能让脚本结构更清晰,还能在多个地方重复调用,避免代码冗余。

为什么需要函数

写脚本的时候,经常会遇到这样的情况:某段逻辑需要在多个地方执行。比如检查文件是否存在、格式化输出日志、解析配置参数等。如果每次都把相同的代码复制一遍,脚本会变得又长又乱,修改起来也麻烦。

函数就是为了解决这个问题而生的。把重复使用的代码封装起来,起个名字,以后想用的时候直接调用就行。修改功能时只需要改一处,所有调用的地方都会生效。

函数能做什么

Shell 函数的功能很丰富:

代码复用:把常用操作封装成函数,一处定义,到处调用。比如写一个打印带时间戳日志的函数,整个脚本都能用它记录信息。

逻辑分解:把复杂的任务拆分成多个小函数,每个函数只做一件事。这样代码更容易理解和维护,出问题也方便定位。

参数化处理:函数可以接收参数,根据不同的输入执行不同的逻辑。比如写一个计算函数,传入不同的数字得到不同的结果。

返回结果:函数可以通过返回值或输出把处理结果传递给调用者,实现数据的流转。

本章内容

这一章我们来系统学习 Shell 函数的方方面面:

  • 函数定义:两种定义语法,命名规范,调用方式
  • 函数参数:位置参数的使用,参数个数处理,参数默认值
  • 函数返回值:return 语句的用法,退出状态码,返回字符串的技巧
  • 变量作用域:全局变量和局部变量的区别,local 关键字的使用
  • 递归函数:函数调用自身的原理,经典递归案例

掌握函数的使用,是写好 Shell 脚本的关键一步。函数用得好,脚本的可读性、可维护性都会上一个台阶。