由于 Ubuntu没有保存和恢复桌面会话的选项在关闭计算机时,我想编写一个 shell 脚本,它有助于通过单个命令设置自定义工作区。我发现类似 问题在网上。但是,我尝试了 gDevilspie,但对这个应用程序完全不熟悉。我也不想使用 Compiz,因为过去我曾多次使用这个软件弄乱我的系统,体验非常糟糕。
我正在寻找一个干净的简单 shell 脚本,可以通过 Dash 作为命令调用。例如,“办公场景”命令将执行以下操作:
- 开始原子工作区 1 中的编辑器
- 开始终结者在工作区 1
- 开始火狐工作区 3 中的浏览器
- 开始松弛在工作区 4
- 开始Trello(Chromium 应用程序快捷方式)在工作区 4
- 开始日出日历(Chromium 应用程序快捷方式)在工作区 4
shell 脚本是实现此目标的正确方法吗?如果是,那么 shell 脚本应该是什么样的(到目前为止,我还没有编写 shell 脚本的经验)以及它应该在哪里通过 Dash 作为单个命令调用?
我非常感谢你的帮助。
答案1
一个命令启动多个应用程序
编写一个 shell 脚本:
#! /bin/bash
atom &
terminator &
firefox
将其保存为例如“myscript”,chmod a+x myscript
并创建一个到开始菜单的快捷方式(取决于您使用的内容,只需在网上搜索如何执行此操作的说明)。
在特定工作区中打开应用程序
这有点棘手。假设你正在使用 GNOME Shell,请尝试这些说明将.desktop
文件绑定到特定工作区。如果可行,您可以定义哪些应用程序应从哪里启动。
编辑:wmctrl
能够将程序发送到特定的工作区,例如
wmctrl -r :ACTIVE: -t 3 # sends the currently active window to workspace 3
您可以像这样组合
( firefox && wmctrl -r firefox -t 3 ) &
( atom && wmctrl -r atom -t 2 ) &
…