AWK - 用户定义函数


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

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

句法

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

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

函数可以接受多个以逗号分隔的参数。参数不是强制性的。您还可以创建不带任何参数的用户定义函数。

函数体由一个或多个 AWK 语句组成。

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

例子

# Returns minimum number
function find_min(num1, num2){
   if (num1 < num2)
   return num1
   return num2
}
# Returns maximum number
function find_max(num1, num2){
   if (num1 > num2)
   return num1
   return num2
}
# Main function
function main(num1, num2){
   # Find minimum number
   result = find_min(10, 20)
   print "Minimum =", result
  
   # Find maximum number
   result = find_max(10, 20)
   print "Maximum =", result
}
# Script execution starts here
BEGIN {
   main(10, 20)
}

执行此代码时,您将得到以下结果 -

输出

Minimum = 10
Maximum = 20