无法使用 python (2.7.3)、bash 和 gnome3 设置背景图像

mal*_*lon 4 python bash

#!/usr/bin/env python
import os
bashCommand = "gsettings set org.gnome.desktop.background picture-uri file:///home/malon/autowallpaperchanger/" + pic_name
print bashCommand
os.system(bashCommand)
Run Code Online (Sandbox Code Playgroud)

打印结果:

gsettings set org.gnome.desktop.background picture-uri file:///home/malon/autowallpaperchanger/wallpaper-1252048.jpg
Run Code Online (Sandbox Code Playgroud)

将打印结果复制并粘贴到终端中会使更改成功,因此命令是正确的,但os.system由于某种原因没有正确处理请求。在完整的脚本(在下面发布)中,我os.system在 (wget) 之前出于不同的原因使用,并且效果很好。

完整脚本在这里

Tim*_*imo 5

删除所有os.systemsubprocess东西。只需使用 Gio/gsettings API,就像这样:

from gi.repository import Gio

settings = Gio.Settings.new("org.gnome.desktop.background")
settings.set_string("picture-uri", "file:///path/to/image.png")
Run Code Online (Sandbox Code Playgroud)