ฉันจะเปลี่ยน 'about: config' ของ Firefox จาก shell script ได้อย่างไร


20

บนสิ่งแรกที่ผมทำเมื่อครั้งแรกที่ใช้โปรไฟล์ Firefox สดคือการตั้งค่าbrowser.urlbar.trimURLsไปfalse(ซึ่งจริงๆควรจะมีการเปลี่ยนแปลงแม้ว่า 'การตั้งค่า' หรือควรจะมีการเริ่มต้นยังคงอยู่) และเพื่อเปลี่ยนการค้นหาและหน้าแรกเริ่มต้นที่ DuckDuckGo ขณะนี้ฉันไปที่ด้วยตนเองabout:configคลิกผ่านข้อความเตือนที่โกรธและค้นหากุญแจ (ซึ่งต่างจากในตัวแก้ไข DConf แม้ไม่ได้จัดระเบียบ)

ดังนั้นฉันต้องการทราบวิธีการอ่านและเขียนคีย์เหล่านี้จากบรรทัดคำสั่งเพื่อให้ฉันสามารถเพิ่ม tweaks เหล่านี้ในสคริปต์การปรับแต่งของฉัน


1
บางคำตอบด้านล่างพึ่งพาการแก้ไขไฟล์ในprofile.defaultโฟลเดอร์ของผู้ใช้ นี่คือวิธีที่คุณค้นพบได้จากภายในเชลล์สคริปต์: รับไดเรกทอรีโปรไฟล์ Firefox เริ่มต้นจาก bash
aexl

คำตอบ:


12

[ สิ่งนี้ไม่ได้ให้สิ่งที่คุณขอ แต่เป็นวิธีที่แตกต่างเพื่อให้ได้ผลลัพธ์เดียวกัน ]

ก่อนอื่นเกี่ยวกับคำเตือน ... คุณสามารถแน่ใจได้ว่าคุณจะไม่เห็นมันอีก (ตามรูปแบบต่อโปรไฟล์) ดังที่แสดงด้านล่าง:

ป้อนคำอธิบายรูปภาพที่นี่

ตอนนี้เกี่ยวกับการตั้งค่าที่คุณต้องการ user.jsโดยทั่วไปแล้วคุณสามารถสร้างไฟล์ข้อความธรรมดาที่เรียกว่า ไฟล์นี้จะต้องถูกวางไว้ในโฟลเดอร์โปรไฟล์ที่เกี่ยวข้องเช่น/home/username/.mozilla/firefox/random.default(ซึ่งrandomเป็นสิ่งที่ไม่ซ้ำกันสำหรับผู้ใช้แต่ละคน)

โครงสร้างและไวยากรณ์ของuser.jsอธิบายไว้ในไฟล์ User.jsเช่น

ดังนั้นในกรณีของคุณคุณจะมีบรรทัดเช่น:

user_pref("set browser.urlbar.trimURLs","false");  

หรือเพื่อใช้ตัวอย่างอื่นของคุณ ( แต่ดูเพิ่มเติมลงไป ):

user_pref("browser.search.defaulturl","https://duckduckgo.com/");

อย่างไรก็ตามฉันขอแนะนำให้คุณตรวจสอบให้แน่ใจก่อนว่าการตั้งค่าที่คุณตั้งไว้นั้นถูกต้องสำหรับเวอร์ชันเบราว์เซอร์ที่คุณใช้ ฉันพูดแบบนี้เพราะฉันไม่เห็นbrowser.search.defaulturlabout:configที่ทุกคนในของฉัน ฉันใช้ Firefox 22 เบต้า ฉันเห็น:

browser.search.defaultenginename;Google

เครื่องยนต์

ดังนั้นการยกตัวอย่างการใช้ Bing แทน Google บรรทัดอื่น ๆ ของคุณuser.jsหากคุณใช้ Firefox 22 จะเป็น:

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

ตามที่ระบุในรูปภาพคุณสามารถค้นหาเอ็นจินเพิ่มเติม

ดังนั้นในระยะสั้นคุณสามารถกำหนดลักษณะของคุณ user.jsและคุณสามารถลบหน้าจอจู้จี้โดย unticking ในภาพแรก

นอกจากนี้ตามที่ระบุในทรัพยากรที่ฉันเชื่อมโยงคุณต้องรีสตาร์ทเบราว์เซอร์เพื่อให้รหัสuser.jsมีผล


6

นี่คือเชลล์สคริปต์ที่เป็นไปได้ คุณต้องcdยังไดเรกทอรีโปรไฟล์ของคุณก่อนที่จะใช้ (ในกรณีที่user.js) สมมติว่าสคริปต์นั้นถูกเรียกว่าff_setคุณสามารถเรียกได้ว่า:

ff_set browser.search.defaulturl '"https://duckduckgo.com/"'

นี่คือรหัส:

#!/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
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.