如何通过命令行清空桌面?

如何通过命令行清空桌面?

我正在寻找一种方法来隐藏整个桌面+图标,然后启动单个应用程序。这是为了提高生产力,如果这有意义的话。如何从命令行以编程方式将桌面设为空白(即删除图标并将其设为黑色)?我也希望事后能够恢复它。

多种解决方案都可以,Ubuntu、GNOME 等,但如果有一种方法可以为所有桌面执行此操作,那就太理想了。

答案1

删除图标是最简单的部分。只需将 ~/Desktop 中的所有文件移动到临时位置:

mkdir ~/backup_icons
mv ~/Desktop/* ~/backup_icons
mv ~/backup_icons/* ~/Desktop # restore

更改背景将特定于您的 DE。我找到了这个Ubuntu SE答案表明您可以gsettings在 Gnome 和 Unity 中使用该命令。

gsettings set org.gnome.desktop.background picture-uri file:///home/serrano/Pictures/blank_image.jpg

答案2

我使用的是 Ubuntu 11.04,带有 Gnome 2,我设法编写了一个bash脚本,该脚本用于gconftool-2临时设置相应的 gconf 键来隐藏图标并更改桌面背景;然后脚本在终端中阻塞(使用 的无限循环read) - 直到按下 Ctrl-C;此时将恢复原始设置。

我已将脚本上传到此处:bckg-desk-tmpchange.sh;它的核心在这里:

replace_image="/usr/share/backgrounds/space-02.jpg"

# Ubuntu 11.04, Gnome 2 - get initial settings:
orig_pic_fn=$(gconftool-2 --get  "/desktop/gnome/background/picture_filename")
orig_show_desk=$(gconftool-2 --get  "/apps/nautilus/preferences/show_desktop")
orig_draw_bckg=$(gconftool-2 --get  "/desktop/gnome/background/draw_background")

restore_originals() {
  echo
  echo "  Restoring original show_desktop: ${orig_show_desk} and original picture_filename: ${orig_pic_fn}"
  gconftool-2 --set "/desktop/gnome/background/picture_filename" --type string ${orig_pic_fn}
  sleep 1
  gconftool-2 --set "/apps/nautilus/preferences/show_desktop" --type bool ${orig_show_desk}
  gconftool-2 --set "/desktop/gnome/background/draw_background" --type bool ${orig_draw_bckg}
}
trap "restore_originals; echo; exit 0" INT

# -------------

echo "Original show_desktop (icons): ${orig_show_desk}"
echo "Original (desktop) picture_filename: ${orig_pic_fn}"

echo
echo "Setting temporary desktop settings: no icons, custom image ${replace_image}"
echo

gconftool-2 --set "/desktop/gnome/background/picture_filename" --type string ${replace_image}
sleep 1
gconftool-2 --set "/apps/nautilus/preferences/show_desktop" --type bool false

while [ 1 ]; do
  read -p "Blocking with read, and waiting for a Ctrl-C interrupt... " dontcare
done

答案3

桌面只是另一个X可以显示任何内容的应用程序 - 这是一个历史和传统问题,大多数人只想要那里的图标,尽管小部件在过去 5 年中已经变得相当普遍。与主流桌面环境不同,更轻量级的独立窗口管理器不会自行启动桌面应用程序,并且大多数情况下只是设置根窗口(包含所有其他窗口的窗口)的颜色/图像。理想情况下,您希望停止管理桌面的任何应用程序 - 然后您只剩下一个空白的根窗口,并且它不会弄乱您的所有图标设置(如果您只是将快捷方式移到其他地方,则可能会发生这种情况)。

桌面应用程序可以是plasma(KDE)、nautilus(gnome) 等。对于每种特定情况,这取决于 DE 是否可以禁用桌面关闭/崩溃时自动重新启动。如果它不干扰,您也许可以终止该进程。您还可以通过 dbus 告诉 DE 做什么(非常具体)。

可以安装两个桌面管理器,在某些情况下,启动一个桌面管理器会取代另一个。

我意识到这不是一个完整的答案,只是一个粗略的计划(太长,无法发表评论)。请随意评论每种特定情况下如何进行。

相关内容