使用gsettings设置壁纸的问题

nit*_*hch 7 gnome wallpaper gsettings

我曾经gsettings set org.gnome.desktop.background picture-uri 'file://PathToImage'按照这个答案中的建议将图像设置为墙纸。这不能正确地完成工作。对于今天的 bing 图片,这里的脚本会像这样更改我的背景

我的桌面图像

这是随机发生的,有时它会正确设置墙纸。使用 GUI,通过右键单击将图像设置为墙纸,每次都能正常工作。此问题的任何可能原因?

Edit1:下载完全没问题。正如我所提到的,我可以通过右键单击照片并从菜单中选择“设置为墙纸”来将照片设置为墙纸。

tot*_*tti 5

你提到

下载完全没问题。正如我所提到的,我可以通过右键单击照片并从菜单中选择“设置为墙纸”来将照片设置为墙纸。

由于您可以手动设置壁纸,问题可能出在缓存上,这是在下载器将数据完全写入文件之前生成的。所以在这种情况下重新生成缓存是必要的。

所以删除壁纸缓存rm /home/$USER/.cache/wallpaper/*。将此代码添加到脚本的末尾sleep

让我们做一个测试

  1. 查找并打开当前壁纸的图像缓存 /home/$USER/.cache/wallpaper/
  2. 编辑图像(例如顺时针旋转。您可以使用 Ctrl+R(或从编辑 -> 旋转)使用默认图像查看器(GNOME 图像查看器)进行编辑)
  3. 注销并登录ubuntu(或重启)

就是这样,您现在可以看到桌面墙纸的变化(如果您旋转图像,那么墙纸也会旋转)


Rad*_*anu 2

以下命令是正确的,并且应该在任何情况下都有效:

gsettings set org.gnome.desktop.background picture-uri 'file://PathToImage'
Run Code Online (Sandbox Code Playgroud)

所以,我认为发生这种情况的主要原因是因为,正如 @d3vid 在他的评论中指出的那样:下载失败(仅下载部分文件)或在下载完成之前显示背景

要解决您的问题,请确保在运行您的问题中的脚本时有更好的互联网连接,或者尝试使用而curl不是像我在这里的wget答案中的脚本一样。