我正在使用 bash 外壳。我有一个 CSV 文件,其中每一行的标记都用逗号分隔。我想取出第二列和第三列并从中形成新的字符串(SQL 语句)。我想我可以为此目的使用 awk,所以我尝试了......
localhost:mydir davea$ awk -F ',' -v OFS=',' "REPLACE INTO my_table (ID, NAME, HOURS) VALUES ('$2', '$2', '$3');" types.csv
awk: syntax error at source line 1
context is
REPLACE INTO my_table >>> (ID, <<<
awk: bailing out at source line 1
但如您所见,我遇到了一个错误。我遗漏了什么吗?如何从 CSV 文件中的每一行形成我的新字符串?
将单引号放在单引号字符串中真的很乏味。在这里,我将单引号传递给 awk 变量“q”。我也在尝试处理SQL 注入。
可能不是最有效的解决方案,但应该有效: