Основная задача конвертера —
перенос заметок из Evernote 5.0.1 в другую программу заметок для Android – Memoires Notes 1.9.3.3.
https://play.google.com/store/apps/details?id=net.nakvic.dromoris&hl=ru
Bash скрипт скачать convert html to sqlite.
Проверен на системе linux Kubuntu 3.16.0-43-generic #58~14.04.1-Ubuntu
Используемые пакеты:
sed
awk
sqlite3
Процесс конвертации:
1) Из программы Evernote (для windows) осуществяется экспорт в отдельные html файлы, дополнительно с указанием даты создания.
2) Cкрипт переносит текстовое содержимое созданных html файлов в базу данных Sqlite3 (memories.db3 таблица MEMO).
Пояснения к скрипту:
prepare sqlite — удвоение кавычек для корректного импорта в базу
sed ‘/[^»]»/ s/»/»»/g’
# начало цикла - считывание всех файлов из директории htm find htm -type f | while read FILENAME; do
echo "$FILENAME" #___________________________CONTENT-TITLE # очистка html от лишних тегов content=$(cat "$FILENAME"|sed -n '//,/<\/body>/p'|sed 's/<font[^}]*">//g;s///g'| sed 's///g;s///g'| sed 's/<basefont[^}]*\/>//g;s///g'| sed 's/<meta[^}]*\/>//g;s///g$# удаление переноса строки content=$(echo "$content" |sed ':a; /$/N; s/\n//; ta')# отделение названия title=$(cat "$FILENAME"|sed '/*/!d; s///;q'| sed 's/<[^>]*>//g;s///g' ) #___________________________CONTENT-TITLE#___________________________ DATE-TIME # отделение даты и времени, изменение формата dates=$(cat "$FILENAME" |sed '/Создана:*/!d; s///;q'| sed 's/<[^>]*>//g;s///g'|awk '{print $3, $1}' |awk 'BEGIN {FS="."}{ print $3 "-" $2 "-"$1}') times=$(cat "$FILENAME" |sed '/Создана:*/!d; s///;q'| sed 's/<[^>]*>//g;s///g'|awk '{print $2}')# преобразование в POSIX-время, добавление 000 Stat=$(date +%s -d"$dates $times") zero="000" timestamp="$Stat$zero" #___________________________ DATE-TIME# тег заметки Descr='diary'# вставка переменных в базу sqlite с именем memories.db3 echo "im gonna run" sqlite3 database.db "insert into note_table \ (global_id,date_added,text,tags) \ values (\"$content\",$title,\"$timestamp\",\"$Descr\");" sqlite3 memories.db3 "insert into memo (note,header,created,tags) \ values (\"$content\",\"$title\",\"$timestamp\",\"$Descr\");"#_________________________________________