我正在尝试遍历一个分隔的文本文件并使用 shell 脚本将它们插入到一个 mysql 数据库表中。
#!/bin/bash
while IFS='|' read val1 val2 val3
#cat testfile.txt | while read line
do
#val1=`echo $line | cut -d'|' -f1`
#val2=`echo $line | cut -d'|' -f2`
#val3=`echo $line | cut -d'|' -f3`
echo $val1 $val2 $val3
/usr/local/mysql/bin/mysql --host=127.0.0.1 --user=root --password= test << EOF
insert into addressTable(street,city,zip)values('$val1','$val2','$val3')
EOF
done < testfile.txt
testfile.txt 的内容是
abc|xyz|123
def|uvw|456
在运行脚本时出现./testMySQL.sh: line 12: syntax error: unexpected end of file
错误。
如果我注释掉连接到 mysql 的代码和随后的插入语句,脚本工作正常,只显示内容。
我相信我迭代文件的方式可能会导致它,但不确定我在这里缺少什么。