Firefox 如何";删除空书签文件夹";或;“合并重复文件夹”;

Firefox 如何";删除空书签文件夹";或;“合并重复文件夹”;,firefox,firefox-addon,bookmarks,Firefox,Firefox Addon,Bookmarks,在使用XMarks+Firefox+Chrome+Android进行了多次糟糕的同步之后,我的书签文件夹完全乱七八糟:我有重复的文件夹名称,其中许多文件夹名称都是空的,但并非全部都是空的 很明显,我在一段时间前就停止使用xmark来阻止它破坏东西。我不知道有多少书签不见了。。。Xmarks有一个方便的书签同步历史记录,但是从那里修复所有东西太麻烦了(没有自动化的方法) 我正在考虑手动编辑places.sqlitebookmarks数据库…在查找了一段时间后,我决定手动滚动修复places.sql

在使用XMarks+Firefox+Chrome+Android进行了多次糟糕的同步之后,我的书签文件夹完全乱七八糟:我有重复的文件夹名称,其中许多文件夹名称都是空的,但并非全部都是空的

很明显,我在一段时间前就停止使用xmark来阻止它破坏东西。我不知道有多少书签不见了。。。Xmarks有一个方便的书签同步历史记录,但是从那里修复所有东西太麻烦了(没有自动化的方法)


我正在考虑手动编辑
places.sqlite
bookmarks数据库…

在查找了一段时间后,我决定手动滚动修复
places.sqlite
Firefox的书签数据库

下载sqlite3客户端后,当然备份了我的places.sqlite文件,我带着这些查询来到这里

在我的例子中,我并不特别了解与书签相关的描述、关键字或任何元数据

1-使用一个id创建辅助表->文件夹名称:

CREATE TABLE ufld AS 
    SELECT min(id) AS id, title
    FROM moz_bookmarks
    group by title
    order by title;
2-创建另一个辅助表,其中每个书签都有其父文件夹名称和其
ufld
名称(如果您想先签出内容,则列数超出需要):

3-使用辅助表更新书签(省略“特殊文件夹”):

4-清理:

DROP table ufld;
DROP table bkm_fld_ufld;
就这样,现在我可以复制回Firefox配置文件文件夹中的
places.sqlite
,享受刷新和清理过的书签

如果有人想出更好的办法,我听说

Firefox同步更新 如果启用了Firefox Sync,那么它将尝试恢复选项卡,恢复到修补
places.sqlite
文件之前的状态

解决办法是:

  • 断开Firefox与Firefox同步的连接
  • 如前所述,修复places.sqlite
  • 将固定书签导出到文件
  • 连接到Firefox Sync并等待它完成任务
  • 删除所有书签
  • 还原固定书签的备份文件

  • 瞧。。。Firefox Sync现在正在使用固定书签同步您所有连接的设备

    仅供参考:您的问题本身已经脱离主题。它更适合于。它还要求我们为您找到Firefox插件。对非现场资源的请求与SO无关。坦率地说,根据您的声誉水平,您应该已经知道堆栈溢出的主题是什么,不是什么。你的回答有点拯救了它,但我仍然不确定它是否在主题上。即使是这样,我想你可能会在超级用户上收到更好的Q/A。
    UPDATE moz_bookmarks 
    SET parent = (SELECT bkm_fld_ufld.ufldid 
                  FROM bkm_fld_ufld 
                  WHERE bkm_fld_ufld.bid = moz_bookmarks.id) 
    WHERE guid NOT GLOB '*___';
    
    DROP table ufld;
    DROP table bkm_fld_ufld;