Де я можу отримати список SCHEMA / PATH / KEY для використання з gsettings?


21

Після виконання деяких досліджень я виявив , що я можу швидко налаштувати параметри конфігурації , використовуючи gsettingsкоманду в терміналі, замість установки dconf-editorабо gconf-editorабо CCSM.

Але нам потрібні SCHEMA / PATH та KEY для встановлення значення.
Синтаксис:

gsettings set SCHEMA[:PATH] KEY VALUE

Наприклад, щоб ніколи не приховувати автозапуск:

gsettings set com.canonical.Unity2d.Launcher hide-mode 0

І, щоб Windows не перекривала пускову установку:

gsettings set com.canonical.Unity2d.Launcher use-strut true 

Отже, де я можу отримати список усіх СХЕМА / ПАТ / КЛЮЧ, які можна встановити за допомогою gsettings?

Ні, будь ласка, не пропонуйте gsettings list-keysкоманду, тому що я не знаю, можливо, сотні доступних схем.

Відповіді:


29

gsettings list-schemasотримує вам всю схему. Ви також можете використовувати gsettings list-recursivelyдля того, що ви хочете, але ця програма перелічить усі значення всіх клавіш для всіх схем:
(Lest call the script gsettings-iterate-all)

#!/bin/bash
# Gnome 3 can be customised from the command line via the gsettings command
# This script should help you to find what you're looking for by
# listing the ranges for all keys for each schema

for schema in $(gsettings list-schemas | sort)
do
    for key in $(gsettings list-keys $schema | sort)
    do
        value="$(gsettings range $schema $key | tr "\n" " ")"
        echo "$schema :: $key :: $value"
    done
done

Розширення на вашому прикладі gsettings-iterate-all | grep com.canonical.Unity2d.Launcher врожайності

com.canonical.Unity2d.Launcher :: edge-decayrate :: type i 
com.canonical.Unity2d.Launcher :: edge-overcome-pressure :: type i 
com.canonical.Unity2d.Launcher :: edge-responsiveness :: type d 
com.canonical.Unity2d.Launcher :: edge-reveal-pressure :: type i 
com.canonical.Unity2d.Launcher :: edge-stop-velocity :: type i 
com.canonical.Unity2d.Launcher :: hide-mode :: type i 
com.canonical.Unity2d.Launcher :: only-one-launcher :: type b 
com.canonical.Unity2d.Launcher :: reveal-mode :: type i 
com.canonical.Unity2d.Launcher :: super-key-enable :: type b 

Ви можете перенаправити вихід у файл для легкого читання.

І для творчих людей там. Ось перелік можливих варіантів для gsettings, які можуть допомогти створити інші сценарії .


1
Rinzwind, Дякую за додаткову корисну інформацію. Я зрозумів після того, як опублікував питання, що повний список доступний за допомогою рекурсивного списку командних gsettings, але, як ви кажете, ви дали велику додаткову інформацію для творчих людей :)
Шрі,

Якщо ви хочете, щоб значення для ключів було типовим, це може зацікавити: askubuntu.com/questions/196896/…
Zta

Дуже корисний ! +1
Сергій Колодяжний

1
@Rinzwind Як практична примітка, яка може бути корисною: Не називайте виклик тестового сценарію test(я його відредагував). Початок testбуде працювати чудово - і ідеально робити свою роботу. Але це може бути /usr/bin/test; Щоб зробити це дійсно швидко, це також вбудована оболонка. - Завдання без аргументів - повернути вихідний код 0і мовчати. (див. man test)
Volker Siegel

2

Це трохи пізно, але я щойно почав боротися з цим питанням конфіденційності ...

Схоже, com.canonical.Unity.Lenses remote-content-search 'none'це перемикач, який ви шукаєте.


Питання задає питання про те, де ми можемо отримати список повної схеми. Ви надаєте той, що стосується конфіденційності. Це насправді не відповідає на поставлене запитання.
Адітя
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.