Files
robot-shop/mysql/convert.sh
2018-08-21 14:47:19 +01:00

28 lines
597 B
Bash
Executable File

#!/bin/sh
# Convert cities CSV file to SQL
if [ -z "$1" ]
then
echo "File required as first arg"
exit 1
fi
# \x27 is a single quote
# \x60 is back tick
awk '
BEGIN {
FS=","
format = "INSERT INTO cities(country_code, city, name, region, latitude, longitude) VALUES(\x27%s\x27, \x27%s\x27, \x27%s\x27, \x27%s\x27, %s, %s);\n"
getline
}
{
gsub(/\x27/, "\x60", $2)
gsub(/\x27/, "\x60", $3)
gsub(/\x27/, "\x60", $4)
if(NF == 6) printf format, $1, $2, $3, $4, $5, $6
else printf format, $1, $2, $3, $4, $6, $7
}
' $1