мне нужно его отпарсить и занести в майскл, в приблизительно такую таблицу
Код: Выделить всё
+-----------+----------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-----------+----------+------+-----+---------+----------------+
| id | int(6) | NO | PRI | NULL | auto_increment |
| date | datetime | NO | | NULL | |
| direction | text | NO | | NULL | |
| user | text | NO | | NULL | |
+-----------+----------+------+-----+---------+----------------+
чтоб получить такое содержимое
Код: Выделить всё
+----+---------------------+-----------+------+
| id | date | direction | user |
+----+---------------------+-----------+------+
| 1 | 2014-05-27 14:02:23 | In | epr |
| 2 | 2014-05-27 13:57:32 | In | abu |
| 3 | 2014-05-27 13:56:21 | In | emo |
| 4 | 2014-05-27 13:54:30 | Out | abu |
| 5 | 2014-05-27 13:52:20 | In | emy |
| 6 | 2014-05-27 13:49:42 | In | vdo |
| 7 | 2014-05-27 13:40:45 | Out | emo |
| 8 | 2014-05-27 13:40:23 | In | set |
| 9 | 2014-05-27 13:38:24 | In | abu |
| 10 | 2014-05-27 13:35:03 | Out | abu |
+----+---------------------+-----------+------+
скрипт получился такой
Код: Выделить всё
#!/bin/bash
input="EventReport.csv"
sed -n '/[()]/p' $input | \
awk -F, '{print $1,$2,$6}' | \
awk '{print $1,$2,$6,$10}' | \
awk -F"/| " '{print $3"-"$1"-"$2" "$4","$5","$6}' | \
sed -e '/Reader/d' -e 's/(//' -e 's/)//' | tac | \
while IFS="," read date direction user; do
echo "INSERT INTO checkpoint (date,direction,user) VALUES ('$date', '$direction', '$user');"
done | mysql -uroot -ppassword visit
Батти меня уже поругал за пайпы, но как можно сделать лучше я пока не додумался. хелп!
итоговую таблицу планирую использовать в дальнейшем чтоб делать запросы кто, когда зашел/вышел и сколько времени провел на рабочем месте.