AWK - ฟังก์ชันที่ผู้ใช้กำหนด
ฟังก์ชันเป็นส่วนประกอบพื้นฐานของโปรแกรม AWK ช่วยให้เราสามารถกำหนดฟังก์ชันของเราเองได้ โปรแกรมขนาดใหญ่สามารถแบ่งออกเป็นฟังก์ชันและแต่ละฟังก์ชันสามารถเขียน / ทดสอบได้อย่างอิสระ ให้การใช้งานโค้ดซ้ำ
ด้านล่างเป็นรูปแบบทั่วไปของฟังก์ชันที่ผู้ใช้กำหนดเอง -
ไวยากรณ์
function function_name(argument1, argument2, ...) {
function body
}
ในไวยากรณ์นี้ไฟล์ function_nameคือชื่อของฟังก์ชันที่ผู้ใช้กำหนดเอง ชื่อฟังก์ชั่นควรขึ้นต้นด้วยตัวอักษรและอักขระที่เหลืออาจรวมกันเป็นตัวเลขอักขระตามตัวอักษรหรือขีดล่างก็ได้ ไม่สามารถใช้คำสำรองของ AWK เป็นชื่อฟังก์ชันได้
ฟังก์ชันสามารถยอมรับหลายอาร์กิวเมนต์โดยคั่นด้วยเครื่องหมายจุลภาค ข้อโต้แย้งไม่ได้บังคับ คุณยังสามารถสร้างฟังก์ชันที่ผู้ใช้กำหนดโดยไม่มีอาร์กิวเมนต์
function body ประกอบด้วยคำสั่ง 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