Linux 将while循环记录传递给函数
在linux中如何将参数传递给函数。 我正在文件中逐行重播,并在后台运行esch记录Linux 将while循环记录传递给函数,linux,bash,shell,sh,ksh,Linux,Bash,Shell,Sh,Ksh,在linux中如何将参数传递给函数。 我正在文件中逐行重播,并在后台运行esch记录 while read -r record do reccount=$(( reccount + 1 )) #function call proceed_tasks_function(record) & done 到功能 proceed_tasks_function(/*take the record from function call*/)
while read -r record
do
reccount=$(( reccount + 1 ))
#function call
proceed_tasks_function(record) &
done
到功能
proceed_tasks_function(/*take the record from function call*/)
{
### parse input record
contact_email=`echo "$record" | cut -f5 -d ''`
echo "contact email is $contact_email"
credit_card_id=`echo "$record" | cut -f6 -d ''`
echo "credit card id is $credit_card_id"
ref_nr=`echo "$record" | cut -f7 -d ''`
echo "reference nr is $ref_nr"
cny_cd=`echo "$record" | cut -f8 -d ''`
echo "country code is $cny_cd"
lang=`echo "$record" | cut -f9 -d ''`
echo "language is $lang"
pmt_ir=`echo "$record" | cut -f13 -d ''`
echo "payment ir is $pmt_ir"
}
shell中的函数类似于任何其他命令:参数只在命令后列出,不需要或不允许使用括号
while read -r record
do
reccount=$(( reccount + 1 ))
proceed_tasks_function "$record" &
done
从函数内部,可以使用$1、$2、$*引用传递的参数,语法与脚本参数相同