Gri*_*ckz 4 sql linux shell awk
有人可以帮我吗,因为我无法使用 awk 命令将一些简单的 3 列 CSv 输出到 SQl
CSV
01Aug2011,user,12
02Aug2011,userb,34
Run Code Online (Sandbox Code Playgroud)
AWK
我知道这个对我有用
awk -F',' '{ print "INSERT INTO Testing (`Date`,`User`,`Usage`) VALUES (" "'"$1"'""," """'"$2"'""," """'"$3"'"")" ""}' new.csv > output.log
Run Code Online (Sandbox Code Playgroud)
但不是这个
awk -F',' '{ print "INSERT INTO Testing (`Date`,`User`,`Usage`) VALUES (" "`"$1"`""," """`"$2"`""," """`"$3"`"")" ""}' new.csv > output.log
Run Code Online (Sandbox Code Playgroud)
我不太确定你的问题是什么。
但如果问题是单引号,你可以尝试这个
awk -F',' '{ printf "INSERT INTO Testing (\x27\Date\x27,\x27User\x27,\x27Usage\x27) VALUES (\x27%s\x27,\x27%s\x27,\x27%s\x27)",$1,$2,$3;print ""}' yourFile
Run Code Online (Sandbox Code Playgroud)
对于您的示例输入行,输出为:
INSERT INTO Testing ('Date','User','Usage') VALUES ('01Aug2011','user','12')
INSERT INTO Testing ('Date','User','Usage') VALUES ('02Aug2011','userb','34')
Run Code Online (Sandbox Code Playgroud)
希望这就是你想要的。