【发布时间】:2019-01-18 10:22:50
【问题描述】:
是否可以从命令行加载和卸载已解压的 Chrome 扩展程序?
【问题讨论】:
标签: shell google-chrome command-line google-chrome-extension
是否可以从命令行加载和卸载已解压的 Chrome 扩展程序?
【问题讨论】:
标签: shell google-chrome command-line google-chrome-extension
是的,虽然只是暂时的 *:
chromium --load-extension=path/to/extension
如果要加载多个扩展,只需用逗号分隔路径即可:
chromium --load-extension=path/to/extension,path/to/another/extension
将 chromium 替换为 chrome.exe(或用于启动 Chrome/Chromium 浏览器的任何内容)。
* 当您关闭浏览器并再次启动它时没有命令行参数,那么该扩展将从已安装的扩展列表中消失。
【讨论】:
chrome --load-extension=path/to/extension 不工作。有任何想法吗?我在窗户上
` instead of /`。
--load-extension=path\to\extension。
可以使用--load-and-launch-app=path/to/app进行安装
它适用于应用程序和扩展程序。 (我在 chrome 版本 35.0.1916.153 m 上测试过)
我不确定是否有其他卸载命令。我发现this list of chromium commands 非常有用。
【讨论】:
--load-and-launch-app 和 --load-extension 都应该是 work as expected。我认为当您尝试使用 --load-extension 标志时,您至少打开了一个 Chrome 窗口。这些标志只有在 Chrome 完全关闭时才起作用。
chrome://extensions 处的“加载解压扩展”按钮将扩展加载为解压扩展。
离线安装/使用 Chrome 扩展程序的 3 种方式:
方法A:拖放(简单)
优点:安装网络和非 Westore 扩展程序
缺点:Google 会快速永久禁用非网上商店扩展程序
方法B:加载解压扩展/7zip到解压/ABP为例
优点:永久启用非网店扩展,只要您使用自定义快捷方式
缺点:扩展只能通过自定义快捷方式加载
~~~~~~~~~~~~~~~ 3个提取扩展错误的修复:~~~~~~~~~~~~~~~
无法加载:创建包含清单文件的文件夹的快捷方式,例如: akkmfdhlogbapbcgojknhfgppcionopk\5.4.7_0
元数据:扩展\删除_元数据文件夹
禁用:使用记事本打开 manifest.json 并定位:
"name": "MSG_appName",
“offline_enabled”:真,
创建:“offline_enabled”:如果不存在,则为真
方法 C: WinRar SFX(大量安装本地/非本地配置文件应用程序)
Chrome 将所有插件提取到: %LocalAppData%\Google\User Data\Default\Extensions
按网店 ID 列出的扩展程序列表。示例:ABP=cfhdojbkjhnklbpkdaibdccddilifddb
ABP 需要 3 个文件:某些扩展可能只需要 2 个
(ABP 存储设置:%LocalAppData%\Google\User Data\Default\Local Extension Settings)
优点:从本地/非本地 PC 大规模安装网络和非网络商店应用程序
缺点:Google 会快速永久禁用非网上商店扩展程序
当 SFX 导入安全首选项文件时,它会将旧的扩展/设置替换为导入的
恢复 Chrome 备份:
【讨论】:
尝试从任务管理器中杀死所有现有的 Chrome 实例:TASKKILL /IM chrome.exe /F 然后chrome.exe --load-extension=path/to/extension 应该可以工作
这个控制台应用程序的工作 C# 代码可以提供帮助
class Program
{
static void Main(string[] args)
{
Process cmd = new Process();
cmd.StartInfo.FileName = "cmd.exe";
cmd.StartInfo.RedirectStandardInput = true;
cmd.StartInfo.RedirectStandardOutput = true;
cmd.StartInfo.CreateNoWindow = true;
cmd.StartInfo.UseShellExecute = false;
cmd.Start();
//kill all chrome instances
cmd.StandardInput.WriteLine("TASKKILL /IM chrome.exe /F");
//path to chrome.exe
cmd.StandardInput.WriteLine("cd C:\\Program Files (x86)\\Google\\Chrome\\Application");
//load extension
cmd.StandardInput.WriteLine("chrome.exe --load-extension={path-to-extension}");
cmd.StandardInput.Flush();
cmd.StandardInput.Close();
Console.WriteLine(cmd.StandardOutput.ReadToEnd());
}
}
【讨论】: