在目录/ mylog /里面我有一堆CSV文件。每个CSV文件只有一行数据。我需要将这些数据输入MySQL数据库。
一行的例子是:
2015-08-14 00:00:00,HOSTNAME,10271kB,17182kB,92874kB,10%,/dev/disk1,/
我需要从每个文件大小中删除'kB'并从百分比字段中删除%。我还需要确保日期时间和主机名始终是唯一的,并且不会放入重复的条目。
这是我到目前为止开始写的内容。但我显然缺少要使用的数据库名称并删除了kB和%。如果还有其他错误或遗失,请告诉我。还有一个事实是每次调用mysql,有没有办法做多个加载数据?
Shell脚本:
#!/bin/bash
for f in /var/log/mylog/*.csv
do
mysql -e "load data local infile '"$f"' into table myTable fields TERMINATED BY ',' LINES TERMINATED BY '\n'" -u myUser --password=myPassword --local-infile
done