En snarves.com.ar encontré como guardar los marcadores (favoritos o bookmarks) de Firefox a un archivo de texto plano y desde la terminal. El tutorial sigue vigente, el lo hizo en un Firefox 3 y yo en un Firefox 20.0 sin que se me presentaran problemas.
Para pedir ayuda para sqlite3; dentro de su shell escribimos .help. Y salimos de ella con .quit.
Estos fueron los pasos que seguí.
Paso 1.-
Como carecía de sqlite, tuve que instalarlo con:
sudo apt-get install sqlite3
Paso 2.-
Después busque el archivo places.slite con:
find /home/`whoami` -iname "*sqlite*" 2> /dev/null
De esa línea:
find ==> Es el comando que busca ficheros.
/home/`whoami` ==> Es la ruta de nuestro home, y el comando whoami entrecomillado con la backquote hace que se muestre el nombre de nuestro usuario.
-iname ==> Es una opción de find para que no sea sensible a mayúsculas/minúsculas.
"*sqlite*" ==> Con esto le decimos que busque cualquier fichero que tenga sqlite dentro de su nombre
2> ==> Hace redireccionamento de la salida de error patrón. Con ello evitamos que se muestren en pantalla los posibles errores y que solo veamos el resultado de nuestra búsqueda.
/dev/null ==> Realmente este archivo no existe. Cuando guardamos, redirecionamos la salida de error patrón, etc. en esa ruta es como mandar a la nada al archivo, información, etc. Estos se pierden y no ocupan espacio de ningún tipo.
Paso 3.-
Entrar a la shell de sqlite.
sqlite3 /LA_RUTA/places.sqlite
Ej.
sqlite3 /home/travesuras/.mozilla/firefox/chjpt3j6.default/places.sqlite
Sale algo como esto:
SQLite version 3.7.7 2011-06-23 19:49:22
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite>
Paso 4.-
Dentro de la shell de sqlite ejecuten:
Ver las tablas de bases de datos:
sqlite> .tables
Sale algo como:
moz_anno_attributes moz_favicons moz_items_annos
moz_annos moz_historyvisits moz_keywords
moz_bookmarks moz_hosts moz_places
moz_bookmarks_roots moz_inputhistory
Paso 5.-
Asignar el archivo donde se van a volcar los datos:
sqlite> .output ff3_bookmarks.txt
Paso 6.-
Hacer el volcado de la base de datos.
Con la línea de abajo lo que se hace es consultar la base de datos (SQL), haciendo que nos devuelva la columna url y une las tablas moz_bookmarks y moz_places. El resultado queda guardado en ff3_bookmarks.txt o en cualquier archivo que hayamos indicado en el paso anterior.
sqlite> select url from mozs_bookmarks, moz_places where fk=moz_places.id ;
Paso 7.-
Salir de la shell de sqlite:
sqlite> .quit
Notas:
Pedir ayuda para sqlite:
sqlite> .help
Si están como yo y no saben donde quedo el archivo ff3_bookmarks.txt hagan:
find / -iname "*ff3_bookmarks.txt*" 2> /dev/null
En la página snarves.com.ar advierten de algunos problemas que se pueden presentar y dan la solución:
Caso 1.- Sqlite. Error: Database is locked
Es cuando esta en uso el archivo (lockeado) por Firefox. La solución es cerrar Firefox y volver a intentarlo.
Caso 2.- Unable to open database "Ruta_del_places.sqlite": file is encrypted or is not a database
La versión de sqlite que usamos es distinta a la que genero el archivo .sqlite. Se soluciona usando el comando sqlite3.
http://snarvaez.com.ar/libertad/index.php/2008/05/26/obtener_bookmarks_firefox3_linea_comandos/
http://kb.mozillazine.org/Places.sqlite