首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >KDE -在启动时在特定工作区中运行特定的命令

KDE -在启动时在特定工作区中运行特定的命令
EN

Ask Ubuntu用户
提问于 2014-11-12 18:54:47
回答 1查看 2.2K关注 0票数 3

我同时在许多文件上做很多工作。基本上,我使用了3-5个工作区,每次使用相同的文件--在特定文件夹中打开终端,用特定文件打开gedit,查看结果(我使用latex)。这是一个问题-如何自动打开文件的过程?我想要的是开始Ubuntu与gedit和文斯打开了我的工作。

一段时间以来,KDE试图打开上次保存的程序,但效果很差--我用空白文件打开了gedit和evince。

我已经看过一些关于devilspie的文章(不是我指定的方式,我想要获得特定的命令,而不仅仅是在工作区2中打开firefox )和在启动时运行命令(似乎更好,但我仍然不知道如何告诉终端有关工作区的信息)。

EN

回答 1

Ask Ubuntu用户

回答已采纳

发布于 2014-11-19 14:05:45

1)安装wmctrl

代码语言:javascript
复制
sudo apt-get install wmctrl

2)创建具有以下内容的文件并使其可执行

代码语言:javascript
复制
#!/bin/bash
wmctrl -s 0 #Switches to workspace 0 [workspaces are numbered from 0]
gnome-terminal & #Say you want a terminal in the 0th workspace
nautilus & #Maybe a file browser too
sleep 2 #Windows take some time to open. If you switch immediately, they'll open up in wrong workspaces. May have to change the value 2.
wmctrl -s 1 #Switches to workspace 1
firefox & #You get the idea. Continue for all workspaces
sleep 2
wmctrl -s 0 #You will be left at this workspace when the script finishes executing

3)从.xsessionrc调用主目录如果您必须创建此文件中的脚本,以便在每次登录时自动执行该过程。或者你可以在需要的时候从终端机打电话。编辑:把它放在“启动应用程序”中,而不是.xsessionrc中。.xsessionrc甚至会在桌面环境完成加载之前执行。

您可能希望创建一个自定义的xsession,这样您就可以选择两个会话,一个自动打开这些应用程序,另一个不打开这些应用程序,但对我来说,这似乎是不必要的。

如果您觉得切换到工作区、打开适当的应用程序然后切换到下一个应用程序是很费时的,那么您可以一次性打开所有应用程序,然后使用wmctrl移动窗口。例如

代码语言:javascript
复制
wmctrl -r 'Firefox' -t 1

如果存在多个窗口,wmctrl管理的窗口列表中的第一个窗口将被移动。您需要知道应用程序创建的窗口的标题才能使用它。这就是为什么我没有建议这是主要的选择。如果标题将是明确的,就像最常用的应用程序一样,那么这就是方法。

全屏打开应用程序:

一些应用程序,如gnome终端,具有命令行参数,可以在最大化状态或全屏模式下打开窗口。如果存在这样的选项,请使用它们。否则,请按以下方式使用wmctrl

代码语言:javascript
复制
wmctrl -r 'username@machinename' -b add,maximized_vert,maximized_horz

这将使我的(已经存在的)终端窗口最大化。

代码语言:javascript
复制
wmctrl -r 'username@machinename' -b add,fullscreen

这会将窗口发送到全屏模式。

浏览wmctrl的S手册页面,您可能会发现它的更多功能的用途。

这个答案是从本源那里得到的。

票数 2
EN
页面原文内容由Ask Ubuntu提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://askubuntu.com/questions/548867

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档