Awk-user-defined-functions
提供:Dev Guides
AWK-ユーザー定義関数
関数は、プログラムの基本的な構成要素です。 AWKでは、独自の関数を定義できます。 大きなプログラムは機能に分割でき、各機能は個別に作成/テストできます。 コードの再利用性を提供します。
以下は、ユーザー定義関数の一般的な形式です-
構文
function function_name(argument1, argument2, ...) {
function body
}
この構文では、 function_name はユーザー定義関数の名前です。 関数名は文字で始める必要があり、残りの文字は数字、アルファベット文字、またはアンダースコアの任意の組み合わせにすることができます。 AWKの予約語は関数名として使用できません。
関数は、コンマで区切られた複数の引数を受け入れることができます。 引数は必須ではありません。 引数なしでユーザー定義関数を作成することもできます。
- 関数本体*は1つ以上のAWKステートメントで構成されます。
最小数と最大数を計算する2つの関数を作成し、これらの関数を 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