如何自动启动特定任务的终端实例

如何自动启动特定任务的终端实例

我正在学习一些编程教程,每次会话时,我都必须启动至少 3 个终端窗口(一个用于日志文件尾部,一个用于测试输出,一个用于运行各种 shell 命令等)

现在我手动启动它们:单击终端图标,cd 到正确的文件夹,输入命令,然后将窗口标题更改为有意义的内容。

有没有办法编写脚本或其他东西来帮我自动完成这一操作?如果可以,该怎么做?

(我很高兴没有得到一个完整的脚本作为答案。一个从哪里开始阅读的指针也是可行的。)

答案1

由于您单击了终端图标,我假设您正在使用gnome-terminal

gnome-terminal --help我通过在命令行上使用并从那里读取获得了选项列表。

根据 maco 的回答,我可能会提出这样的建议:

gnome-terminal --window --title=Log -e "tail -f /var/log/syslog" --window --title=Output --working-directory=output --window --active --title=Dev --working-directory=dev/project

此示例启动三个窗口(尽管您可以通过--tab选项卡)并设置每个工作目录(相对于主目录)和标题,tail在一个窗口中启动命令并使第三个窗口处于活动状态。

当然,您可能更喜欢使用单独的行来启动每个窗口,特别是当您有许多参数时。

另一个有用的方法是,当你按照自己的喜好排列好窗口后,使用

gnome-terminal --save-config=FILE

这将创建一个配置文件,其中包含以下信息全部打开终端窗口和选项卡(包括标题、工作目录等)。--load-config然后使用该选项启动 gnome-terminal 将重新创建您的布局。

许多使用多个终端的开发人员喜欢使用终结者因为它增加了网格布局和键盘快捷键等功能。

答案2

无论你使用什么终端仿真器,都应该能够接受命令作为参数。例如:

gnome-terminal -e "tail -f /var/log/syslog"

只需在系统 -> 首选项 -> 会话(Ubuntu)或系统设置 -> 自动启动(Kubuntu)中将此类命令添加到自动启动中即可

答案3

您也可以使用脚本自动执行此操作。我建议您阅读高级 Bash 脚本指南或 Bash Programming HOWTO,以及您正在使用的终端的手册页。

这是一个简单的例子:

$ vi your-script
#!/bin/bash
gnome-terminal -e "tail -f /var/log/syslog"
gnome-terminal --working-directory=/foo/bar
gnome-terminal --whatever-else

然后让它可执行:

$ chmod +x your-script

相关内容