Firefox:找到特定附加/扩展的位置?

sda*_*aau 14 firefox firefox-addon

我正在使用Firefox 5,我已经知道扩展名位于Profile文件夹extensions文件夹中 ...但是,我需要找到特定扩展名(例如,CoLT)的位置; 问题是大多数扩展文件夹都是由guid命名的,例如

extensions$ ls
{232ac1d3-4d70-4919-8338-48c3d3f98afc}
{29c4afe1-db19-4298-8785-fcc94d1d6c1d}
{2bfc8624-5b8a-4060-b86a-e78ccbc38509}
{33f141c0-3703-4a4c-b459-cec618a7dafd}
...
Run Code Online (Sandbox Code Playgroud)

然后再说:" 从Gecko 2.0(Firefox 4/Thunderbird 3.3/SeaMonkey 2.1)开始,安装扩展时不再解压缩XPI文件.而是将XPI本身放在扩展目录中,文件直接加载到包. "(扩展包装 - MDN文档)......

由于XPI基本上是一个ZIP存档,因此请浏览extensions文件夹,查找扩展名:

extensions$ grep -ri 'colt' . 
Run Code Online (Sandbox Code Playgroud)

......什么都不会回报

那么,有没有人知道一个方法(或扩展名)告诉我究竟哪个XPI(或解压缩文件夹)是位于/加载的特定扩展名?

Wla*_*ant 29

输入about:support#extensions-tbody到你的位置吧-这将名单(除其他事项外)所有与它们的ID一起安装的扩展.扩展ID确定目录中的文件夹/文件名extensions.请注意,扩展名并不总是安装在您的个人资料中 - 如果有疑问,extensions.iniFirefox个人资料中的内容应该清除.

如果您想让它更"舒适",您可以将以下代码粘贴到浏览器控制台中:

var {AddonManager} = Components.utils.import("resource://gre/modules/AddonManager.jsm", null);
AddonManager.getAllAddons().then(addons => {
    for (let addon of addons.filter(addon => addon.type == "extension"))
        console.log(addon.name, addon.getResourceURI().spec);
});
Run Code Online (Sandbox Code Playgroud)

这将使用加载项管理器API来显示所有加载项的名称和安装位置.

  • @WladimirPalant `about:support#extensions-tbody` 是一个更重要的 url,用于检索已安装的 Firefox 扩展列表。该 url 将立即显示扩展列表而无需滚动,至少在 Firefox 50 中是这样。 (2认同)