这是我的bash脚本
##################start#######################
cat out.txt | awk -F'\n' '{
n=split($0,line,"[");
for (i = 2; i <= n;i++) {
printf "%s [%s\n", line[1],line[i] ;
############ need to call netcat_output function here##########
}
}'
netcat_output () {
echo $1``
}
####################end ########################
我需要用netcat_output
参数调用line[i]
函数。我怎么能这样做?
答案 0 :(得分:0)
尝试使用此模板解决您的问题。即,在awk
语句之前定义和导出函数。还要在系统调用中明确定义bash
,否则默认情况下它将是sh
。
#!/bin/bash
function f() {
echo $RANDOM
}
export -f f
awk 'BEGIN{print system("bash -c '\'' f '\'' ")}'