函数是程序的基本构建块,AWK允许我们定义自己的函数,大型程序可以分为函数,每个函数可以独立编写/测试。它提供了代码的可重用性。

下面给出的是用户定义函数的一般格式-

function function_name(argument1, argument2, ...) { 
   function body
}

在此语法中, function_name 是用户定义函数的名称。函数名称应以字母开头,其余字符可以是数字,字母字符或下划线的任意组合,AWK的保留字不能用作函数名称。

让我们编写两个函数,计算最小和最大数目,并从另一个名为 main 的函数调用这些函数。 functions.awk 文件包含-

# 返回最小值
function find_min(num1, num2){
   if (num1 < num2)
       return num1
   return num2
}
# 返回最大值
function find_max(num1, num2){
   if (num1 > num2)
      return num1
   return num2
}
# 主函数
function main(num1, num2){
   # 查找最小数
   result=find_min(10, 20)
   print "Minimum =", result
  
   # 查找最大数
   result=find_max(10, 20)
   print "Maximum =", result
}
# 脚本执行从这里开始
BEGIN {
   main(10, 20)
}

在执行此代码时,您将获得以下输出-

Minimum=10
Maximum=20

参考链接

https://www.learnfk.com/awk/awk-user-defined-functions.html