답변:
원하는 키 favorite-apps
는 스키마 ID입니다 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']"
여전히 하나 이상의 데스크탑 파일 이름을 위치 매개 변수로 허용하고 즐겨 찾기에서 제거하는 고유 한 유틸리티 ( API 사용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))