GNU/Linux >> LINUX-Kenntnisse >  >> Ubuntu

Wie liest man den Standardschlüsselwert mit Dconf oder Gsettings?

Ich würde gerne den Standardwert eines dconf/gsettings-Schlüssels wissen.

Meine Frage ist eine Fortsetzung der folgenden Frage:
Woher bekomme ich eine Liste von SCHEMA / PATH / KEY zur Verwendung mit gsettings?

Was ich versuche, also ein Skript zu erstellen, das alle meine persönlichen Einstellungen liest, damit ich sie sichern und wiederherstellen kann. Ich plane, alle Schlüssel wie das obige Skript zu durchlaufen, zu sehen, welche Schlüssel von ihrem Standardwert geändert wurden, und diese zu notieren, die später wiederhergestellt werden können.

Ich sehe, dass der dconf-Editor den Standardwert der Schlüssel anzeigt, aber ich würde dies sehr gerne skripten. Außerdem sehe ich nicht, wie das Parsen der Schemas /usr/share/glib-2.0/schemas/ automatisiert werden kann. Vielleicht kann jemand helfen?

gsettings get-default|list-defaults wäre schön =)

(Mensch, früher war es viel einfacher, als Sie Ihre ~/.somethingrc in Subversion gehalten haben … =

Basierend auf der unten gegebenen Antwort, Ich habe das Skript aktualisiert, um Schema, Schlüssel, Datentyp des Schlüssels und Standardwert auszugeben , und aktueller Wert:

#!/bin/bash

for schema in $(gsettings list-schemas | sort); do
    for key in $(gsettings list-keys $schema | sort); do
        type="$(gsettings range $schema $key | tr "n" " ")"
        default="$(XDG_CONFIG_HOME=/tmp/ gsettings get $schema $key | tr "n" " ")"
        value="$(gsettings get $schema $key | tr "n" " ")"
        echo "$schema :: $key :: $type :: $default :: $value"
    done
done

Diese Problemumgehung deckt im Wesentlichen das ab, was ich brauche. Ich werde von hier aus weiter am Backup-Skript arbeiten.

Akzeptierte Antwort:

Es scheint keinen netten Weg zu geben, direkt zu den Standardwerten zu gelangen, aber da der Client XDG_CONFIG_HOME in der Umgebung überprüft, könnte ein anständiger Workaround sein, um Werte aus einer neuen Konfiguration zu erhalten:

XDG_CONFIG_HOME=/nonexistent gsettings get SCHEMA KEY

Ubuntu
  1. So installieren Sie ein SSL-Zertifikat eines Drittanbieters mit cPanel

  2. So verwenden Sie SSH-Schlüssel mit Plesk

  3. So generieren Sie ein SSH-Schlüsselpaar (mit Beispielen)

  4. Wie verwendet man Ssh-Copy-ID mit Multiple-Hop-SSH-Tunnel?

  5. Wie tippt man griechische Zeichen mit Atmung und Akzent?

So verwenden Sie die Public-Key-Authentifizierung mit SSH

So verwenden Sie Vagrant mit dem Libvirt KVM-Anbieter

So lesen Sie eine Datei mit Leerzeichen in Linux

So verifizieren Sie einen Download in Ubuntu mit SHA256-Hash oder GPG-Schlüssel

So verwenden Sie einen SSH-Schlüssel mit Nicht-Root-Benutzern

So aktualisieren Sie Homebrew mit Cron unter Mac OS