#!/usr/bin/env python
import os
bashCommand = "gsettings set org.gnome.desktop.background picture-uri file:///home/{me}/autowallpaperchanger/" + pic_name
print bashCommand
os.system(bashCommand)
打印结果:
gsettings set org.gnome.desktop.background picture-uri file:///home/{me}/autowallpaperchanger/wallpaper-1252048.jpg
将打印结果复制并粘贴到终端中会使更改成功,因此命令正确,但是os.system由于某种原因没有正确处理请求。
谢谢!
EDIT 完整脚本: http://pastebin.com/bUKYYrn1
答案 0 :(得分:1)
使用原始字符串。
#!/usr/bin/env python
import os
bashCommand = r"gsettings set org.gnome.desktop.background picture-uri file:///home/{me}/autowallpaperchanger/" + pic_name
print bashCommand
os.system(bashCommand)
在python中正确的做法是
from gi.repository import Gio
SCHEMA = 'org.gnome.desktop.background'
KEY = 'picture-uri'
def change_background(filename):
gsettings = Gio.Settings.new(SCHEMA)
gsettings.set_string(KEY, "file://" + filename)
gsettings.apply()
if __name__ == "__main__":
change_background("/home/{me}/autowallpaperchanger/pic_name")