我想通过awkshell直接在mysql中插入数据

我想通过awkshell直接在mysql中插入数据,shell,awk,Shell,Awk,如何在mysql中直接插入数据。。 听说是密码 awk ' BEGIN { FS=";"; } { if(NR>1) { Max = $1 Min = $2 Com = $3 if(Max>Com) { NMax = Max if(Max>Com && NMaxMin) { NMin = Min i

如何在mysql中直接插入数据。。 听说是密码

awk ' BEGIN { FS=";"; } { if(NR>1) { Max = $1 Min = $2 Com = $3 if(Max>Com) { NMax = Max if(Max>Com && NMaxMin) { NMin = Min if(Min1) printf "%9.2f;%9.2f;%9.2f;%9.2f;%9.2f;\n", $1,$2,$3,NMax,NMin }' data.txt awk' 开始{ FS=“;”; } { 如果(NR>1) { 最高=1美元 最低=2美元 Com=$3 如果(最大值>Com) { NMax=最大值 如果(最大值>Com&&NMaxMin) { NMin=Min if(Min1) printf“%9.2f;%9.2f;%9.2f;%9.2f;%9.2f;\n”、$1、$2、$3、NMax、NMin }'data.txt #mysql-uroot-proot wcdata和table name-data\u com


提前感谢….

这里有一个建议:您可以尝试以下内容,而不是
printf
语句:

istr="INSERT INTO data_com"
cstr="(Column001, Column002, Column003, Column004, Column005)"
cmd="echo "istr" "cstr" VALUES ("
cmd=sprintf("%s'%.2f','%.2f','%.2f','%.2f','%.2f'\)", cmd,a1[i],a2[i],a3[i],a,b)
cmd= cmd " | mysql -uroot -proot wcdata"
system(cmd)

请注意,您缺少右大括号
}
什么是
Min1
NMaxMin
?如果要使用命令
mysql
插入数据,一种可能是使用
系统()从
awk
中调用它
在awk中起作用。首先打印东西比较安全,通过管道发送到
|head
查看它是否好看,如果是,则通过管道发送到真实的命令,在这个
|mysql
@janos中,我同意…我只是认为我应该让OP来决定一些事情。抱歉,这不起作用。错误..警告:转义序列
\)被视为plain
)'sh:Syntax error:“(“意外的我更改了”(“%s”,“%.2f”)…@user3020916您能提供有关错误的更多信息吗?@user3020916您能给我发电子邮件给我您正在使用的awk脚本吗?我的电子邮件地址是
hakon。hagland@uni.no
。然后我会看一看。