如何从 shell 脚本更改 Firefox 的“about:config”?

Jam*_*igh 23 configuration firefox scripts

当我第一次使用一个新的 Firefox 配置文件时,我做的第一件事是设置browser.urlbar.trimURLsfalse(尽管“首选项”确实应该可以更改或应该保持默认值),并将搜索和主页默认值更改为 DuckDuckGo。目前我手动转到about:config,单击愤怒的警告消息,然后搜索键(与 DConf 编辑器不同,它甚至没有组织)。

所以我想知道如何从命令行读取和写入这些键,以便我可以将这些调整添加到我的自定义脚本中。

小智 14

[这不提供您所要求的内容,而是实现相同结果的不同方式。]

首先,关于警告......你可以确保你永远不会再看到它(基于每个配置文件),如下所示:

在此处输入图片说明

现在,关于您想要的偏好。通常,您可以创建一个名为user.js. 该文件必须放置在相关的配置文件文件夹中,例如/home/username/.mozilla/firefox/random.defaultrandom每个用户的独特之处)。

例如user.jsUser.js 文件中描述了的结构和语法。

所以在你的情况下,你会有这样的一行:

user_pref("set browser.urlbar.trimURLs","false");  
Run Code Online (Sandbox Code Playgroud)

或者,使用您的其他示例(但请进一步查看):

user_pref("browser.search.defaulturl","https://duckduckgo.com/");
Run Code Online (Sandbox Code Playgroud)

但是,我建议您首先确保您设置的首选项对您使用的浏览器版本有效。我这样说是因为我browser.search.defaulturl在我的about:config. 我正在使用 Firefox 22 测试版。相反,我看到:

browser.search.defaultenginename;Google
Run Code Online (Sandbox Code Playgroud)

引擎

因此,以使用 Bing 而不是 Google 为例,user.js如果您使用的是 Firefox 22,则另一行将是:

user_pref("browser.search.defaultenginename","Bing");

如图所示,您可以搜索其他引擎。

因此,简而言之,您可以输入您的首选项,user.js并且可以通过取消选中第一张图像来删除唠叨屏幕。

此外,如我链接到的资源中所示,您必须重新启动浏览器才能使代码user.js生效。


stu*_*ent 6

这是一个可能的shell脚本。cd在使用它之前,你必须到你的配置文件目录(在哪里user.js)。假设脚本被调用,ff_set你可以这样称呼它:

ff_set browser.search.defaulturl '"https://duckduckgo.com/"'
Run Code Online (Sandbox Code Playgroud)

这是代码:

#!/bin/bash

sed -i 's/user_pref("'$1'",.*);/user_pref("'$1'",'$2');/' user.js
grep -q $1 user.js || echo "user_pref(\"$1\",$2);" >> user.js
Run Code Online (Sandbox Code Playgroud)