2015-08-28 1 views

Répondre

2

Tout d'abord, assurez-vous que le chemin du fichier est correct. Exécutez cette ligne dans un terminal:

ls /home/user/Pictures/wallpapers/X 

Le fichier a-t-il été listé? Si c'est le cas, passez à l'étape suivante.

Assurez-vous de connaître l'emplacement de la commande gsettings. Dans le terminal, exécutez:

which gsettings 

Cela devrait vous obtenir le chemin complet gsettings. Si rien n'est affiché, le répertoire contenant gsettings n'est pas dans your $PATH variable. Par exemple, le chemin est /usr/bin/gsettings. Essayez d'exécuter ce dans un terminal:

/usr/bin/gsettings set org.gnome.desktop.background picture-uri /home/user/Pictures/wallpapers/X 

Si cela fonctionne, passer la même chaîne à os.system():

import os 
os.system("/usr/bin/gsettings set org.gnome.desktop.background picture-uri /home/user/Pictures/wallpapers/X") 
+1

quand je l'exécute en python la sortie est 0 mais rien n'arrive –

+0

L'avez-vous essayé sur la ligne de commande? Si cela fonctionne, cela devrait fonctionner en Python. –

+0

oui je l'ai essayé sur le terminal cela n'a pas fonctionné –

0

Essayez ceci:

import os 
os.system("gsettings set org.gnome.desktop.background picture-uri file:/home/user/Pictures/wallpapers/picture_name") 
1

Essayez celui-ci:

import subprocess 
subprocess.Popen("DISPLAY=:0 GSETTINGS_BACKEND=dconf /usr/bin/gsettings set org.gnome.desktop.background picture-uri file://{0}".format(picture_path), shell=True) 

cela fonctionnera même lorsque vous l'utilisez dans cron. Je ai écrit un script qui télécharge des images bing et ensuite mis en fond d'écran.

aussi vous pouvez essayer les commandes suivantes:

feh --bg-fill picture_path 
hsetroot -extend picture_path 
0

Pour définir un fond d'écran spécifique, la commande est:

gsettings set org.gnome.desktop.background picture-uri 'file:///home/user/Pictures/wallpapers/apple.jpg' 

La commande pour voir (obtenir) quelle est la papier peint courant:

gsettings get org.gnome.desktop.background picture-uri