मैं अनुमान लगा रहा हूं कि मुझे उपलब्ध स्कीमा में से एक को संपादित करने की आवश्यकता है, gsettings
लेकिन मुझे नहीं पता कि कौन सा है। और जब मैंने सभी स्कीमों को सूचीबद्ध किया, तो उनमें से बहुत सारे हैं।
मैं अनुमान लगा रहा हूं कि मुझे उपलब्ध स्कीमा में से एक को संपादित करने की आवश्यकता है, gsettings
लेकिन मुझे नहीं पता कि कौन सा है। और जब मैंने सभी स्कीमों को सूचीबद्ध किया, तो उनमें से बहुत सारे हैं।
जवाबों:
कुंजी आप चाहते हैं favorite-apps
, स्कीमा आईडी है org.gnome.shell
। अब अपने पसंदीदा ऐप्स को सूचीबद्ध करने के लिए आप बस चला सकते हैं
gsettings get org.gnome.shell favorite-apps
या
dconf read /org/gnome/shell/favorite-apps
ये उदाहरण के लिए तार की एक वापसी करेंगे
['firefox.desktop', 'org.gnome.Terminal.desktop', 'org.gnome.Nautilus.desktop', 'org.gnome.gedit.desktop', 'gnome-calculator.desktop']
अब, उस सरणी से एक मान निकालने के लिए, आप टेक्स्ट प्रोसेसिंग टूल का उपयोग कर सकते हैं जैसे sed
/ awk
यह जाँचने के लिए कि क्या कोई आइटम उस सूची में है और इसे उसी प्रारूप को रखते हुए हटा दें (ऐसा नहीं है, हालांकि निश्चित रूप से उल्लेखनीय है) और एक बार जब आप इसे प्राप्त करते हैं, तो इसे सही लिखें डेटाबेस के लिए नई सेटिंग्स जैसे कि आप हटाना चाहते थे मान लें org.gnome.Nautilus.desktop
(दोहरे उद्धरण नोट):
gsettings set org.gnome.shell favorite-apps "['firefox.desktop', 'org.gnome.Terminal.desktop', 'org.gnome.gedit.desktop', 'gnome-calculator.desktop']"
या
dconf write /org/gnome/shell/favorite-apps "['firefox.desktop', 'org.gnome.Terminal.desktop', 'org.gnome.gedit.desktop', 'gnome-calculator.desktop']"
फिर भी, अपनी स्वयं की उपयोगिता ( एपीआई का उपयोग करकेgsettings
) लिखना आसान है जो एक या एक से अधिक डेस्कटॉप फ़ाइल नामों को स्थितीय मापदंडों के रूप में स्वीकार करेगा और उन्हें पसंदीदा से हटा देगा; आपको आरंभ करने के लिए, यहां एक बहुत ही बुनियादी उदाहरण दिया गया है, python
जो एक परम को स्वीकार करता है (जैसे script.py firefox.desktop
):
#!/usr/bin/env python
from sys import argv
from gi.repository import Gio,GLib
item=argv[1]
gschema = Gio.Settings('org.gnome.shell')
gvalues=gschema.get_value('favorite-apps').unpack()
if item in gvalues: gvalues.remove(item)
gschema.set_value('favorite-apps', GLib.Variant('as', gvalues))