- 自定義函數格式
awk 自定義函數獲取參數,選擇性的返回標量值,函數可以在程序的頂層任意位置定義。自定義格式為: function name(arg1,arg2,....argn){
statement(s)
}
function(expr1,expr2,...)# 忽略任何返回值
result=function(expr1,expr2,...)# 將返回值存儲在變量中
funchtion add(x,y sum) // sum 就是一個局部變量,初始化為空字符串
{
sum=x+y
return sum /
}
a=add(1,2) // 傳遞的參數少於函數add()定義時的數量
printf("m: %d\n",a)
function fibonacci(nth)
{
if(nth ==1|| nth ==2)
return1
else
return fibonacci(nth-1)+ fibonacci(nth-2) // 遞歸
}
######執行體###########################
{
n=$1 // 第一個字段
printf(" %dth of fibonacci sequence is: %d\n", n, fibonacci(n))
}
問題: 復雜度大,求第n項時需要把前n-1項都計算一遍!
[root@web1 function]# echo -e "1\n2\n34\n43\n23"|awk '{print "Number is: " $1}'
Number is:1
Number is:2
Number is:34
Number is:43
Number is:23
[root@web1 function]# echo -e "1\n2\n34\n43\n23"|awk '{printf "Number is: " $1;} END{printf "\n"}'
Number is:1Number is:2Number is:34Number is:43Number is:23
[root@web1 function]# echo -e "1\n2\n34\n43\n23"|awk '{printf "Number is: " $1 "\n"}'
Number is:1
Number is:2
Number is:34
Number is:43
Number is:23
Linux常用命令之awk http://www.linuxidc.com/Linux/2016-09/135046.htm
Linux系統之文本格式化工具awk http://www.linuxidc.com/Linux/2016-02/128150.htm
AWK簡介及使用實例 http://www.linuxidc.com/Linux/2013-12/93519.htm
Linux awk文本分析工具 http://www.linuxidc.com/Linux/2015-12/126217.htm
Linux文本處理工具之awk http://www.linuxidc.com/Linux/2015-01/111437.htm
如何在Linux中使用awk命令 http://www.linuxidc.com/Linux/2014-10/107542.htm
文本分析工具-awk http://www.linuxidc.com/Linux/2014-12/110939.htm
AWK入門基礎教程 http://www.linuxidc.com/Linux/2016-12/138138.htm
使用awk格式化輸出文本 http://www.linuxidc.com/Linux/2016-04/130193.htm