GNU/Linux >> Linux Esercitazione >  >> Ubuntu

Come leggere il valore chiave predefinito con Dconf o Gsettings?

Vorrei conoscere il valore predefinito di una chiave dconf/gsettings.

La mia domanda è un seguito della domanda seguente:
Dove posso ottenere un elenco di SCHEMA / PATH / KEY da utilizzare con gsettings?

Quello che sto cercando di fare, quindi crea uno script che legga tutte le mie preferenze personali in modo da poterne eseguire il backup e ripristinarle. Ho intenzione di scorrere tutte le chiavi, come lo script sopra, vedere quali chiavi sono state modificate dal loro valore predefinito e prendere nota di queste, che possono essere ripristinate in seguito.

Vedo che l'editor dconf mostra il valore predefinito delle chiavi, ma mi piacerebbe molto scriverlo. Inoltre, non vedo come l'analisi degli schemi /usr/share/glib-2.0/schemas/ possa essere automatizzata. Forse qualcuno può aiutare?

gsettings get-default|list-defaults sarebbe carino =)

(Accidenti, era molto più facile ai vecchi tempi in cui tenevi il tuo ~/.somethingrc in subversion … =

In base alla risposta fornita di seguito, Ho aggiornato lo script per stampare schema, chiave, tipo di dati della chiave, valore predefinito e valore effettivo:

#!/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

Questa soluzione alternativa copre sostanzialmente ciò di cui ho bisogno. Continuerò a lavorare sullo script di backup da qui.

Risposta accettata:

Non sembra esserci un bel modo per ottenere direttamente i valori predefiniti, ma poiché il client controlla XDG_CONFIG_HOME nell'ambiente, una soluzione decente per ottenere valori da una nuova configurazione potrebbe essere:

XDG_CONFIG_HOME=/nonexistent gsettings get SCHEMA KEY

Ubuntu
  1. Come installare un certificato SSL di terze parti con cPanel

  2. Come utilizzare le chiavi SSH con Plesk

  3. Come generare una coppia di chiavi SSH (con esempi)

  4. Come impostare l'impostazione predefinita su Ruby 2.1.2?

  5. Come posso escludere i file per impostazione predefinita con rsync?

Come utilizzare l'autenticazione a chiave pubblica con SSH

Come utilizzare Vagrant con il provider KVM Libvirt

Come leggere un file con spazi in Linux

Come verificare un download in Ubuntu con hash SHA256 o chiave GPG

Come utilizzare una chiave SSH con utenti non root

come aggiornare homebrew con Cron su Mac os